`
txf2004
  • 浏览: 7065716 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

无限级联动菜单-AJAX版(附源码下载)

阅读更多

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta content="琥珀[hopesoft],http://www.10090.com" name="author">
<title>琥珀网 - 无限级联动菜单[AJAX版]</title>
<style type="text/css">
body, td
{
font-family: 宋体;
font-size: 12px;
}
</style>
<script language="JavaScript">
function GetResult(str,classid)
{
/*
*--------------- GetResult(str,classid) -----------------
* GetResult(str)
* 功能:通过XMLHTTP发送请求,返回结果.
* 参数:str,字符串,发送条件;classid,数字,菜单级别
* 实例:GetResult(document.all.userid.value,1);
*--------------- GetResult(str,classid) -----------------
*/
//定义菜单级数,菜单ID数组,菜单对应字段数组
var MenuIdArr,MenuFieldArr,MenuClass
MenuIdArr= new Array()
MenuFieldArr=new Array()
MenuClass=4

MenuIdArr[1]="sel1"
MenuIdArr[2]="sel2"
MenuIdArr[3]="sel3"
MenuIdArr[4]="sel4"

MenuFieldArr[1]="name"
MenuFieldArr[2]="name"
MenuFieldArr[3]="name"
MenuFieldArr[4]="name"


if (window.XMLHttpRequest) { // Mozilla, Safari, ...
http_request = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE
http_request = new ActiveXObject("Microsoft.XMLHTTP");
}


var linkurl="ajax_server.asp?classid="+classid+"&sel="+str+"&fieldname="+MenuFieldArr[classid+1]
http_request.open("GET",linkurl,false);
http_request.send(null);

//服务器端处理返回的是经过escape编码的字符串.
//在页面显示服务器查询结果

var returntxt=unescape(http_request.responseText)
if(returntxt.length>0)
{document.all,ajax.innerHTML="服务器返回结果:<font color='red'>"+returntxt+"</font> [Powered by AJAX]"}
else
{document.all,ajax.innerHTML=""}

//通过XMLHTTP返回数据,开始构建Select.
//BuildSel(returntxt,eval("document.all."+MenuIdArr[classid+1]))
BuildSel(returntxt,document.getElementById(MenuIdArr[classid+1]))

//============更改下下级以下菜单为空==============
var kkk
for(kkk=classid+2;kkk<=MenuClass;kkk++)
{
submenu=document.getElementById(MenuIdArr[kkk])
submenu.length=1
submenu.options[0].selected=true
}
}

function BuildSel(str,sel)
{
/*
*--------------- BuildSel(str,sel) -----------------
* BuildSel(str,sel)
* 功能:通过str构建Select.
* 参数:str,字符串,由服务端返回的.有特定结构"字符串1|,字符串2,字符串3"
* 也可为"字符串1序号|字符串1文本,字符串2序号|字符串2文本,字符串3序号|字符串3文本",如本例
* 参数:sel,要构建的Select
* 实例:BuildSel(unescape(oBao.responseText),document.all.sel2)
*--------------- BuildSel(str,sel) -----------------
*/
//先清空原来的数据.
sel.options.length=0;
var arrstr = new Array();
arrstr = str.split(",");
//开始构建新的Select.
sel.options.add(new Option( "-----请选择-----",""));
if(str.length>0)
{
for(var i=0;i<arrstr.length;i++)
{
//分割字符串
var subarrstr=new Array
subarrstr=arrstr[i].split("|")
//生成下级菜单
sel.options.add(new Option(subarrstr[1],subarrstr[0]));
}
sel.options[0].selected=true
}

}
</script>

<form name="form1" method="post" action="">
<table width="90%" border="0" align="center" cellpadding="2" cellspacing="1" bgcolor="#CCCCCC">
<tr bgcolor="F1F1F1">
<td height="24" colspan="2" align="center">琥珀无限级联动菜单-AJAX版 [HPMenu_AJAX V1.0]</td>
</tr>
<tr bgcolor="#FFFFFF">
<td width="12%" height="24" align="center">所 在 洲:</td>
<td><select name="sel1" id="sel1" onChange="GetResult(this.value,1)">
<option value="" selected>-----请选择-----</option>
<option value="10">亚洲</option>
<option value="11">欧洲</option>
</select></td>
</tr>
<tr bgcolor="#FFFFFF">
<td height="24" align="center">国  家:</td>
<td><select name="sel2" id="sel2" onChange="GetResult(this.value,2)">
<option value="" selected>-----请选择-----</option>
</select></td>
</tr>
<tr bgcolor="#FFFFFF">
<td height="24" align="center">城  市:</td>
<td><select name="sel3" id="sel3" onChange="GetResult(this.value,3)">
<option value="" selected>-----请选择-----</option>
</select></td>
</tr>
<tr bgcolor="#FFFFFF">
<td height="24" align="center">地  区:</td>
<td><select name="sel4" id="sel4">
<option value="" selected>-----请选择-----</option>
</select></td>
</tr>
<tr bgcolor="F1F1F1">
<td height="24" colspan="2" align="center" id="ajax">&nbsp;</td>
</tr>
</table>
<br>
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="25" align="left">&nbsp;</td>
</tr>
<tr>
<td height="25" align="left">&nbsp;</td>
</tr>
<tr>
<td height="25" align="left">&nbsp;</td>
</tr>
<tr>
<td height="25" align="left">&nbsp;</td>
</tr>
<tr>
<td height="25" align="left">&nbsp;</td>
</tr>
<tr>
<td height="50" align="center">&nbsp;</td>
</tr>
</table>
<script language="javascript">
GetResult(document.getElementById("sel1").value,1)
</script>
</form>
</body>
</html>

源代码下载:点击下载
分享到:
评论

相关推荐

    无限级联动菜单(AJAX源码)

    这个教程和源码将帮助你理解如何利用AJAX实现一个无限级联动菜单。 1. **AJAX基础** AJAX的核心是XMLHttpRequest对象,它可以异步地向服务器发送请求,获取响应数据。在JavaScript中,你可以通过创建...

    商业编程-源码-Ajax无限级树源码.zip

    此压缩包"商业编程-源码-Ajax无限级树源码.zip"显然包含了一套用于构建无限级树结构的Ajax源代码,这在诸如组织结构、目录浏览、文件管理系统等场景中非常常见。下面将详细探讨这个知识点。 1. **Ajax基础**:Ajax...

    纯ajax 无限级 树形 菜单 源码+.rar

    标题中的“纯ajax 无限级 树形 菜单 源码”指的是一个使用纯JavaScript(通过AJAX技术)实现的无限级树形菜单的源代码。这个菜单允许用户在不刷新整个页面的情况下,动态加载和展示层级结构的数据,提供了一种高效的...

    [其他类别]坏孩子无限级树型菜单_hhztree.zip源码ASP.NET网站源码打包下载

    [其他类别]坏孩子无限级树型菜单_hhztree.zip源码ASP.NET网站源码打包下载[其他类别]坏孩子无限级树型菜单_hhztree.zip源码ASP.NET网站源码打包下载[其他类别]坏孩子无限级树型菜单_hhztree.zip源码ASP.NET网站源码...

    纯ajax无限级树形菜单源码

    没有采用第三方ajax组件,纯ajax sqlserver无限级树形菜单. 内还包括表结构和一些基础数据 补充:第一次发布时,忘了图片打包进来. 以下载的朋友可以在这里下载图片 ...依次为:t_L1.gif,t_L2.gif,t_L4.gif,t_M1.gif,t_M2....

    AJAX教程实例,ASP+AJAX+ACCESS数据库应用教程(附源码)-Ajax基础教程 by alixixi_com.mht

    AJAX教程实例,ASP+AJAX+ACCESS数据库应用教程(附源码)-Ajax基础教程 by alixixi_com.mht

    无限级级联菜单的多种演示源码v1.0.zip

    本项目“无限级级联菜单的多种演示源码v1.0”提供了一种解决方案,包含了多种实现方式,帮助开发者理解和应用这种功能。 在前端开发中,级联菜单通常由JavaScript或者更现代的库如jQuery、Vue.js、React.js等实现,...

    飞飞无限级分类 Asp+sql+存储过程+ajax v1.3-ASP源码.zip

    【飞飞无限级分类 Asp+sql+存储过程+ajax v1.3-ASP源码.zip】是一款基于ASP(Active Server Pages)技术开发的无限级分类系统,它结合了SQL数据库、存储过程以及Ajax(Asynchronous JavaScript and XML)技术,为...

    Java 开发JSP无限级分类目录树-sorttree项目源码

    总的来说,"Java 开发JSP无限级分类目录树_sorttree项目源码"是一个涵盖了数据库设计、Java后端处理、JSP前端展示的综合实例,它展示了如何在Java Web环境中处理和展示无限级分类目录。通过学习和理解该项目,开发者...

    Ajax无限级树源码

    在实际应用中,Ajax无限级树广泛应用于文件管理系统、组织架构展示、产品分类、导航菜单等场景。它不仅可以帮助用户高效地浏览和操作大量层级数据,还能减少网络带宽消耗,提高响应速度。 总之,Ajax无限级树是一种...

    VC 资源管理器-无限级树型菜单.rar

    一个比较早的代码了,VC 资源管理器-无限级树形菜单,本程序所用压缩函数库在子目录zipfunc中,在zipfunc目录下,有两个子目录分别包含Release版和Debug版的zipfunc.lib,两者都是共享链接库编译生成.同样,主程序的链接...

    spring-framework-3.2.9.RELEASE 源码下载

    spring-framework-3.2.9.RELEASE 源码下载。 GitHub :https://github.com/spring-projects/spring-framework/tags/v3.2.9.RELEASE

    jquery+css实现绚丽的横向二级下拉菜单-附源码下载

    主要介绍了jquery+css实现绚丽的横向二级下拉菜单-附源码下载,需要的朋友可以参考下

    java源码包---java 源码 大量 实例

    Java右键弹出菜单源码 简单 Java圆形按钮实例代码,含注释 两个目标文件,自绘button。 Java圆形电子时钟源代码 1个目标文件 内容索引:JAVA源码,系统相关,电子钟  用JAVA编写的指针式圆形电子钟,效果图如下所示...

    ASP.NET源码——坏孩子无限级树型菜单.zip

    在这个“坏孩子无限级树型菜单”的示例中,我们主要探讨的是如何在ASP.NET环境下实现一个可扩展到任意层级的树形菜单。 首先,我们需要了解ASP.NET中的控件体系。在ASP.NET中,树形菜单通常可以通过TreeView控件来...

    ASP源码—比比看 ASP 无限级导航菜单 v1.0.zip

    在ASP源码中,"比比看 ASP 无限级导航菜单 v1.0" 是一个专门为网站设计的导航菜单系统,它允许开发者构建能够自适应多层级结构的菜单,以实现更高效、更直观的网站导航。 无限级导航菜单的关键在于递归处理,这种...

    无限级分类功能包(云起) v1.0-ASP源码.zip

    在详细介绍“无限级分类功能包(云起) v1.0-ASP源码.zip”之前,有必要先了解ASP的基本概念以及无限级分类在Web开发中的重要性。ASP即Active Server Pages,是一种用于构建动态网站和服务器端应用程序的脚本语言,它...

Global site tag (gtag.js) - Google Analytics