首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 大家应该把项目中用到的JS代码放到这上面来,我放第一个! [无满意答案结贴]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lirong800
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 揭帖率:
    发表于:2008-03-22 10:28:39 楼主
      我放的这个代码是项目中用来显示地名的
      用js动态创建select,打开网页的时候,会显示第一个下拉框,显示的是省级的市,只要选择了省级市,如果下面还有下级的,比如什么县,就会自动创建下一个select,直到他下面没有为止!数据是用ajax从后台数据库读取的,每当select变化的时候,就用id到数据库去找!
    JScript code
    <script> function $(id) { return document.getElementById(id); } function init() { //初始化之前调用 var obj=$("area"); var selectObj=obj; var context=$("context"); var length=context.childNodes.length-1; for(var i=length;i>=0;i--) { if(context.childNodes[i]==selectObj) break; context.childNodes[i].removeNode(true); } obj.length=0; var date=new Date(); ajax("init.action?date="+date,init_callBack); } function init_callBack(objXML) { var selectObj=$("area"); addInit(selectObj);//固化 var areaArr=objXML.getElementsByTagName("area"); for(var i=0;i<areaArr.length;i++) { var option=document.createElement("option"); option.setAttribute("value",areaArr[i].getAttribute("id")); option.appendChild(document.createTextNode(areaArr[i].getAttribute("name"))); selectObj.appendChild(option); //alert(areaArr[i].getAttribute("name")); } } function addInit(obj) { var opt=document.createElement("option"); opt.setAttribute("value",""); opt.appendChild(document.createTextNode("请选择")); obj.appendChild(opt) } function ajax(url,method) { var http_request = new ActiveXObject('Microsoft.XMLHTTP'); // var date=new Date(); http_request.open("get",url,"false"); http_request.onreadystatechange = function() { if(4 == http_request.readyState) { if(200 == http_request.status) { method(http_request.responseXML); } } } http_request.setRequestHeader("If-Modifyed-Since","0"); http_request.send(null); } function addSelect() { var selectObj=event.srcElement; if(selectObj.selectedIndex==0) { var context=$("context");//得到context组件 var length=context.childNodes.length-1; for(var i=length;i>=0;i--) { if(context.childNodes[i]==selectObj) break; context.childNodes[i].removeNode(true) } } else { var areaId=selectObj.options[selectObj.selectedIndex].getAttribute("value") initNext(areaId) } } function initNext(areaId) { var date=new Date() ajax("init1.action?index="+areaId+"&date="+date,initNext_callBack); } function initNext_callBack(objXML) { var _areaArr=objXML.getElementsByTagName("area"); if(_areaArr.length>0) { var selectObj_gc=event.srcElement; var context_gc=$("context"); var length=context_gc.childNodes.length-1; for(var i=length;i>=0;i--) { if(context_gc.childNodes[i]==selectObj_gc) break; context_gc.childNodes[i].removeNode(true); } var context=$("context"); var selectObj=document.createElement("select") selectObj.onchange=addSelect; var optionFirst=document.createElement("option"); optionFirst.setAttribute("value",""); optionFirst.appendChild(document.createTextNode("请选择")); selectObj.appendChild(optionFirst); var areaArr=objXML.getElementsByTagName("area"); for(var i=0;i<areaArr.length;i++) { var opt=document.createElement("option"); opt.setAttribute("value",areaArr[i].getAttribute("id")); opt.appendChild(document.createTextNode(areaArr[i].getAttribute("name"))); selectObj.appendChild(opt); } context.appendChild(selectObj); } else { var selectObj_gc=event.srcElement; var context_gc=$("context"); var length=context_gc.childNodes.length-1; for(var i=length;i>=0;i--) { if(context_gc.childNodes[i]==selectObj_gc) break; context_gc.childNodes[i].removeNode(true); } } } </script>
    10  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yixianggao
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 2

    发表于:2008-03-22 15:24:031楼 得分:0
    俺放三本手册行不?

    DHTML参考手册
    http://download.csdn.net/source/308913

    样式表中文手册
    http://download.csdn.net/source/304124

    JScript语言参考
    http://download.csdn.net/source/308916
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • btbtd
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-03-22 21:35:592楼 得分:0
    大概老板出钱不是要我们干这事的...
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved