<select class=”sele” id=”selProvince” name=”patient.Province” onchange=”loadCity(this, selCity, selArea)”> 有一个JS文件写的都是那些省市区。现在点击省份的时候就会触发Onchange事件调用那个JS中的方法。但是问题就是我要修改该页面信息,可能一进来页面,就会已经填写了地址。但是市和区都是通过点击改变省触发onchange事件之后才会出来的,现在就不能正常显示了。 |
|
1分 |
进入页面直接把那个select赋值就可以了。会自动选好的
|
5分 |
如果是数据库的话 做一个ajax。不是的话在js脚本里写个 setInterval(function(){},1000) 获取值赋值··很简单啊
|
只会赋给省,但是市和区需要点击才会触发。 |
|
$(“#selProvince option”).each(function(){ alert($(this).val()); |
|
1分 |
如果要设默认值的话3个下拉菜单都要设撒。要么都不设。
|
我就设置一个啊 |
|
不明白哎 是不是 累世 一出来就是 黑龙江省 哈尔滨市 道里区 这样子的??
|
|
是的 |
|
谁有纯JS写的所有省市区3个的级联。。发个给我谢谢。
|
|
3分 |
这个不就是逻辑判断吗?没什么东西,写出来就是一堆定义。。当年写过一个,写了几千行。 |
拒绝··那是码农干的活
|
|
哟 你狠牛嘛? |
|
10分 |
纯JS的话怎么和服务器通信呢?肯定用到Ajax或者Html5中的WebSocket吧 发一个我以前写的例子吧,二级联动的。三级连动原理一样的。不会引用一下问 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <!-- 北京bj 东城 西城 崇文 天津 和平 河东 河西 --> <select id="city"> <option value="bj">北京</option> <option value="tj">天津</option> </select > <select id="country"></select> <script type="text/javascript"> var city = document.getElementById("city"); city.onchange = function() { //document.getElementById("city").value; var value = this.value; var xhr; if(window.XMLHttpRequest) { xhr = new XMLHttpRequest(); }else if(window.ActiveXObject) { xhr = new ActiveXObject( "Microsoft.XMLHttp" ); } xhr.onreadystatechange = function() { if(xhr.readyState == 4) { if(xhr.status == 200){ //xxx-xxx-xx var content = xhr.responseText; var countrys = content.split("-"); var c = document.getElementById("country"); var children = c.childNodes; while(c.hasChildNodes()) { c.removeChild(children[0]); } for(var i=0;i<countrys.length;i++) { //alert("xxx"); var option = document.createElement("option"); option.innerHTML = countrys[i]; c.appendChild(option); } } } } xhr.open("GET","cityServlet?city=" + value,true); xhr.send(null); } </script> </body> </html> 服务端: protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Map<String, List<String>> citys = new HashMap<String, List<String>>(); List<String> bList = new ArrayList<String>(); bList.add("东城"); bList.add("西城"); bList.add("崇文"); citys.put("bj", bList); List<String> tList = new ArrayList<String>(); tList.add("和平"); tList.add("河东"); tList.add("河西"); citys.put("tj", tList); request.setCharacterEncoding("UTF-8"); String city = request.getParameter("city"); List<String> list = citys.get(city); String result = ""; for(String s : list) { result += s + "-"; /////// } response.setCharacterEncoding("UTF-8"); response.setContentType("text/plain"); PrintWriter writer = response.getWriter(); writer.print(result); } |
有现成的,何必再造车。
|
|
下班了··懒得写啊
|
|
这东西,,网上一大堆吧,,,不出钱的东西要人家帮你写,,我只能说,,这社会好“雷锋”少!
|
|
5分 |
说下: select ajax 在ajax中动态添加select 的 option吧,触发用onchange事件
|
5分 |
select下拉列表包含两种动作:
1.初始化操作 2.点击改变操作 你现在实现了第2步操作,第一步的操作需要你在初始化js的时候通过遍历下拉列表进行选择。 可以参考一下:http://blog.csdn.net/zhanglujie2008/article/details/8759235 |
5分 |
有点无语,LZ的意思是,人家三级联动已经写好了,一个表的增删改查,在修改的时候,修改页面的数据赋值了,但是因为是联动,如果不按照顺序来点击的话市、县的数据没有联动,这样就会得不到想要的结果。
LZ可以尝试下主动加载你的联动数据的思路来实现。 |
谢谢你 我看看 |
|
是的,我就是这个意思,不过现在解决了 呵呵 |
|
我没有别人帮我写OK? |
|
5分 |
修改的话,直接拿着你的省去查市然后随着修改页面一起显示。 |
toggle()事件
|