两天时间用ajax写了个无限级的多级联动菜单(ajaxphp构架).docxVIP

两天时间用ajax写了个无限级的多级联动菜单(ajaxphp构架).docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE PAGE #/ 8 花了两天时间。研究AJAX,终于独立完成一个无限组的多级菜单联动 功能。 主要特点: 就是HTML静态页面可以无刷新的与PHP动态角本文件及数据库交互 (这也是AJAX的核心目的)。 以下把代码贴出来。供大家参考指正: ajax.js 文件(位于根目录下 js 子目录) var xmlHttp; function createXmlHttp(){ if(window.XMLHttpRequest){ xmlHttp=new XMLHttpRequest(); }else{ xmlHttp=new ActiveXObject(Microsoft.XMLHttp);}} basic」nc.php位于根目录下 /inelude 子 目录下) ?php $DB_SERVER=localhost; $DB_NAME=ajax; $DB_USER=root; $DB_PASSWORD=; ? conn.php(位于根 目录下/inelude 子 目录下) ?php require_once(dir_inc.php); require_once($ROOT_DIR.include/basic_inc.php); @$db=mysql_connect($DB_SERVER,$DB_USER) (faile!.mysql_error()); @mysql_select_db($DB_NAME); ? dir_inc.php (位于根目标下 /inelude 子目录下) ?php $ROOT_DIR=../; ? select_me nu.html(位于根目录下是核心前台文件)or die !DOCT YPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//ENhtml head titleselect_menu/title scripttype=text/javascript src=js/ajax.js// 这里引用创建 xmlHttp 对像的 文件(对浏览器做过判断) /script script type=text/javascript var targetSelld;//申明一个全局变量用来存放当前要操作的对像的ID var selArray;//申明一个全局数组。用来存放级联菜单的数组 // 获取列表选项的调用函数 function buildSelect(selectedld,targetld){ if(selectedId==){//selectedId 为空表示选中了默认项 clearSubsel(targetId);// 清除目村列表及下级列表的选项 return;// 直接结束调用,不必向服务器请求信 息}createXmlHttp(); //将传入的目标列表的Id赋值给TargetSelld变量 targetSelld二targetld;// 创建 XmlHttpRequest 对像 //alert(targetSelId); xmlHttp.onreadystatechange=buildSelectCallBack; //设置回调函数 xmlHttp.open(GET,select_menu.php?selectedld=+selectedld,true);xmlHttp.send( null);}// 获取列表选项的回调函数 function buildSelectCallBack(){ if(xmlHttp.readyState==4){ // 将从服务器获得的文本转为对像直接量 // alert((+xmlHttp.responseText+)); var selectlnfo=eval((+xmlHttp.responseText+)); var targetSelNode=document.getElementByld(targetSelld); clearSubSel(targetSelld);//清除列表及下级列表中的选项 // 遍历对像直接量中的成员 for(var o in selectlnfo){ var option1 = document.createElement(option);// 创建一个 Option 节点 option 1.value=o;〃节点无素的值为o optio nl.appe ndChild(docume nt.createTextNode(select In fo[o]));〃 给节点加入文本 信息 targetSelNode.appendChild(option1);// 把以上的节点信息创建在 targetSelNode对像上}}}//根据传入的Value和Text创建选项,这个函

文档评论(0)

laugh + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档