1、拿到父目录信息
<%
List<Category> categories = CategoryService.getInstance().getTopCategories();
%>
2、主脚本
<script language="javascript">
<!--
addListener("dblclick", "myLabelDblClick");//当事件类型为dblclick时,就调用myLabelDblClick方法
addNode(-1,0,"类别","images/top.gif");//增加根节点
<%
for(int i=0; i<categories.size(); i++) {//把父目录信息增加到根节点下面
Category c = categories.get(i);
%>
addNode(<%=c.getPid()%>,<%=c.getId()%>,"<%=c.getName()%>","images/top.gif");
<%
}
%>
showTV();
-->
</script>
3、实现myLabelDblClick方法
<script language="javascript" src="script/TV20.js"></script>//引用TV20.js
<script language="javascript">
var req;
var gKey;
function init() {
if(windodw.XMLHttpRequest) {
req = new XMLHttpRequest();
} else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
}
}
function myLabelDblClick(key, parentKey) {
if(findNode(key).subitems.length > 0) return;
init();
gKey = key;
var url = "GetCategoryChilds2.jsp?id=" + escape(key);
req.open("GET", url, true);
req.onreadystatechange = callback;
req.send(null);
}
function callback() {
if(4 == req.readyState) {
if(200 == req.status) {
eval(req.responseText);
var node = findNode(gKey);//将插入孩子的父节点刷新后再打开
if(node.subitems.length > 0) {
node.refresh();
node.open();
}
}
}
}
</script>
4、实现GetCategoryChilds2.jsp
<%
int id = Integer.parseInt(request.getParameter("id"));
//取出该孩子下面的所有孩子信息,加入到相应的父节点下面
List<Category> childs = CategoryService.getInstance().getChilds(id) ;
System.out.println(childs.size());
StringBuffer buf = new StringBuffer();
for(int i=0; i<childs.size(); i++) {
Category c = childs.get(i);
buf.append("addNode(" + id + "," + c.getId() + ",'" + c.getName() + "','images/top.gif');" + "\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());
%>
分享到:
相关推荐
在IT行业中,构建一个省市县三级菜单联动的功能是常见的需求,尤其在网页应用中,用于让用户选择他们的地理位置。本项目采用的技术栈包括MySQL数据库、AJAX异步通信、JSON数据格式以及PHP服务器端编程,这些都是Web...
省市县三级联动菜单是一种常见的网页交互设计,常用于地理信息选择,例如在填写地址时,用户依次选择省份、城市和县区,这三个选项之间存在层级关系,并且选择上级菜单后,下级菜单会动态更新。在ASP(Active Server...
联动四级菜单+无限级联动菜单+无限级联动菜单-AJAX版&JavaScript版
联动菜单在Web开发中是一种常见的交互设计,它通常用于实现数据层级关系的展现和操作,如省份-城市-区县的三级联动选择。本资源包“联动菜单大全”包含了多种类型的联动菜单实现,包括与数据库交互的、使用AJAX技术...
ASP实例开发源码—ASP四级联动下拉菜单 (XML+Access).zip ASP实例开发源码—ASP四级联动下拉菜单 (XML+Access).zip ASP实例开发源码—ASP四级联动下拉菜单 (XML+Access).zip
本项目“ajax+json+ashx实现下拉列表三级联动”旨在利用jQuery、Ajax以及ASHX处理程序来创建这样一个功能。 首先,jQuery是一个强大的JavaScript库,它的易用性和丰富的API使得处理DOM操作、事件绑定、动画效果以及...
这个示例代码可以帮助开发者理解如何在.NET环境中结合XML和AJAX实现前后端通信,以及如何构建一个高效、无刷新的省市县三级联动功能。对于初学者来说,这是一个很好的实践案例,有助于深入理解Web开发中的异步交互和...
在本案例中,“ajax+ChinaArea.xml实现三级联动”指的是利用Ajax技术,配合一个名为“ChinaArea.xml”的XML文件,来创建一个展示中国行政区域的三级联动下拉菜单系统。 首先,ChinaArea.xml文件通常包含中国各个...
在IT行业中,开发一个能够实现省市县三级联动的系统是一项常见的需求,特别是在处理地理信息或者地址选择时。这个"php+ajax+mysql省市县三级联动"的资源提供了一个基于PHP、Ajax和MySQL实现的示例,它可以帮助初学者...
关于联动以前都没接触过,这是我第一次学习用的例子,很实用,适合初学者下载学习
在前端,三级联动下拉菜单通常通过JavaScript来实现,利用事件监听和DOM操作。当用户在一级下拉菜单(如省份)中选择一个选项时,二级下拉菜单(如城市)会根据省份的选择动态加载对应的城市数据。同理,选择城市后...
在本案例中,“联动下拉列表html+.net+Ajax.rar”是一个包含示例代码的压缩包,主要演示了如何使用HTML、ASP.NET和AJAX技术实现联动下拉列表。 首先,我们来看HTML部分。HTML是构建网页结构的基础语言,它创建了...
标题中的“地区三级联动AJAX源码+数据库”是指一种基于AJAX技术实现的地区选择功能,它通常用于网站的地址填写或者搜索筛选等场景。这个功能的特点是,用户在选择省份时,下拉菜单会自动加载对应的市,再选择市时,...
基于Ajax的三级联动下拉菜单.rar基于Ajax的三级联动下拉菜单.rar基于Ajax的三级联动下拉菜单.rar基于Ajax的三级联动下拉菜单.rar基于Ajax的三级联动下拉菜单.rar基于Ajax的三级联动下拉菜单.rar
本压缩包“帝国CMS二级联动插件(ajax下拉列表).rar”提供的就是针对帝国CMS系统的一个二级联动插件,利用AJAX技术实现实时数据加载。AJAX(Asynchronous JavaScript and XML)是一种在无需刷新整个页面的情况下,...
### 使用Ajax+JSON实现多级联动菜单的知识点详解 #### 一、背景介绍与概念解析 随着互联网技术的发展,用户对交互式应用的需求日益增长。RIA(Rich Internet Applications)概念的提出更是加速了这一趋势。其中,...
在这个"省市区三级联动ajax+json+jquery"的例子中,开发者孙意如提供了一个基于AJAX、JSON和jQuery的小型示例,帮助我们理解和实现这一功能。 首先,我们要理解AJAX(Asynchronous JavaScript and XML),它是一种...
【描述】提到的"js三级联动"是指在网页中,通过JavaScript实现的三个下拉菜单之间的联动效果。这种联动通常应用在省、市、区这样的地理信息选择中,用户在选择一个省后,市的选项会根据省的选择动态更新;选择市后,...
### 使用jQuery、Ajax、JSP与Servlet实现二级级联菜单 #### 一、项目背景与技术栈概述 本文档将详细介绍如何使用jQuery、Ajax、JSP与Servlet来实现一个简单的二级级联菜单功能。该功能常见于许多Web应用程序中,如...
在这个"超简单的ajax+jsp实现2级联动"的例子中,我们将探讨如何利用AJAX(Asynchronous JavaScript and XML)技术和JavaServer Pages (JSP)来实现这种功能。 首先,我们需要了解AJAX的基本原理。AJAX允许网页在不...