1、编写表单
<form name="frm" method="get">
<select name="parent" onchange="changeDrop2()">
<option value="-1">请选择</option>
<%
for(int i=0; i<categories.size(); i++) {
Category c = categories.get(i);
%>
<option value="<%=c.getId() %>"><%=c.getName() %></option>
<%
}
%>
</select>
<select name="child">
<option value="-1">Child Not Selected!</option>
</select>
</form>
2、用AJAX实现changeDrop2方法
<script type="text/javascript">
var req;
function init() {
if(window.XMLHttpRequest) {
req = new XMLHttpRequest();
} else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
}
}
function changeDrop2() {
init();
var url = "GetCategoryChilds.jsp?id=" + escape(document.frm.parent.options[document.frm.parent.selectedIndex].value);
req.open("GET", url, true);
req.onreadystatechange = callback;
req.send(null);
}
function callback() {
if(4 == req.readyState) {
if(200 == req.status) {
alert(req.responseText);
eval(req.responseText);//执行服务器返回的javascript动态脚本
}
}
}
</script>
3、用javascript编写动态脚本
<%
int id = Integer.parseInt(request.getParameter("id"));
List<Category> childs = CategoryService.getInstance().getChilds(id) ;
StringBuffer buf = new StringBuffer();
buf.append("document.frm.child.length = " + (childs.size()+1) + ";\n");
buf.append("document.frm.child.options[0].value = '-1';\n");
buf.append("document.frm.child.options[0].text = 'Pls Select!';\n");
buf.append("document.frm.child.selectedIndex = 0;\n");
for(int i=0; i<childs.size(); i++) {
Category c = childs.get(i);
buf.append("document.frm.child.options[" + (i+1) + "].value = '" + c.getId() + "';\n");
buf.append("document.frm.child.options[" + (i+1) + "].text = '" + c.getName() + "';\n");
}
response.setContentType("text/html;charset=gbk");
response.setHeader("Cache-Control", "no-store"); //HTTP1.1
response.setHeader("Pragma", "no-cache"); //HTTP1.0
response.setDateHeader("Expires", 0); //prevents catching at proxy server
response.getWriter().write(buf.toString());
%>
分享到:
相关推荐
总之,"一个和数据库关联的,二级联动菜单示例ajax实现"是一个有价值的资源,它可以帮助开发者理解并掌握使用AJAX实现动态交互菜单的技术。无论是初学者还是经验丰富的开发者,都可以从中受益,提高自己的技能。通过...
在IT行业中,构建一个省市县三级菜单联动的功能是常见的需求,尤其在网页应用中,用于让用户选择他们的地理位置。本项目采用的技术栈包括MySQL数据库、AJAX异步通信、JSON数据格式以及PHP服务器端编程,这些都是Web...
本资源包“联动菜单大全”包含了多种类型的联动菜单实现,包括与数据库交互的、使用AJAX技术的,以及无限级别的联动菜单。这些菜单方案可以极大地提升用户体验,尤其是在需要用户进行多级选择时。 首先,我们要理解...
总的来说,利用Ajax实现二级联动菜单是一种常见的前端技术实践,它能够提高用户体验,使网页操作更加流畅。通过深入学习和实践,你将能够灵活运用Ajax解决更多类似的问题,提升你的Web开发技能。
**AJAX无限级联动菜单**是一种常见的Web交互技术,它基于ASP.NET框架,结合AJAX(Asynchronous JavaScript and XML)和ACCESS数据库实现。这个技术的主要目的是提供用户友好的界面,通过异步方式加载数据,无需刷新...
struts2+jsp+json+javascript实现的三级下拉菜单,没有service和dao层,数据是虚拟的。需要的欢迎下载。项目直接导入myeclipse就可以使用。访问路径localhost:8080/ajax_day02_hw/proviencecityarea.jsp
在本项目中,"ASP 实用的ajax二级联动菜单"是一个结合了这两种技术的应用,旨在创建一个响应快速、交互流畅的二级菜单系统。 在ASP中,我们通常会使用VBScript或JScript作为脚本语言来处理服务器端逻辑。在这个案例...
总的来说,"Ajax菜单联动"项目涉及了前端和后端的协同工作,使用Ajax技术实现了动态更新菜单的功能,同时利用CSS和JavaScript来优化用户体验。通过合理组织项目结构和配置,我们可以构建出高效、响应式的菜单系统。
实现三级菜单联动,通常涉及以下关键技术点: 1. **HTML 结构设计**: 首先,我们需要创建一个符合三层结构的HTML菜单。这包括三个层级的一级菜单、二级菜单和三级菜单元素。通常使用`<ul>`和`<li>`标签来构建层次...
本项目是关于使用AJAX实现一个三级联动菜单,这种菜单通常用于地区选择、类别筛选等场景,当用户在一级菜单中选择一项时,二级菜单会动态加载对应的数据,同理,选择二级菜单后,三级菜单也会相应地更新。...
在本文中,我们主要关注JavaScript和Ajax技术在二级联动菜单实现中的应用。首先,页面上的JavaScript代码会在页面加载时初始化,确保相关的DOM元素已经可用。接着,通过JavaScript事件监听器(在本例中是第一个下拉...
在这个"无限级联动菜单-AJAX版&JavaScript版"中,我们将深入探讨如何使用AJAX和JavaScript技术实现这种功能。 AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的...
Ajax(Asynchronous JavaScript and XML)技术因其无需刷新整个页面即可与服务器交互的能力,被广泛应用于各类Web应用中,尤其在实现多级联动菜单时效果显著。 #### 一、理解Ajax联动菜单 **Ajax联动菜单**,是一...
在实现Ajax多级联动菜单的过程中,通常涉及以下几个关键技术: 1. **Ajax(Asynchronous JavaScript and XML)**:Ajax的核心是通过JavaScript异步地与服务器交换数据,更新部分网页内容,无需刷新整个页面。这使得...
1、javascript实现二级联动:运用jsp标签拼写Javascript代码,实现一个二维数组,点击一级栏目时,查询二维数组里...2,ajax实现的二级联动:利用Ajax与后台程序实现异步交互,后台程序拼写JOSN字符串,发送到客户端。
### 使用Ajax+JSON实现多级联动菜单的知识点详解 #### 一、背景介绍与概念解析 随着互联网技术的发展,用户对交互式应用的需求日益增长。RIA(Rich Internet Applications)概念的提出更是加速了这一趋势。其中,...
在网页开发中,"Ajax 实现无限级联动"是一种常见的交互设计技术,它允许用户在无需刷新整个页面的情况下,通过下拉菜单、树形结构或其他交互元素实现各级数据的动态加载。这种技术大大提升了用户体验,使得网站操作...
本案例主要探讨如何使用Ajax来实现两个或多个下拉菜单之间的联动效果。 首先,我们需要了解基础的Ajax工作原理。Ajax的核心是XMLHttpRequest对象,它允许JavaScript在后台与服务器进行通信。通过创建XMLHttpRequest...
总结来说,实现AJAX二级菜单联动效果涉及到前端的JavaScript编程、DOM操作,以及后端的数据处理和API设计。理解这些知识点对于开发交互性强、用户体验良好的Web应用至关重要。通过实践和不断优化,你可以创建出更加...