当前位置:编程学习 > JS >>

java & JS 实现<select>标签级联?

怎么用jsp & JS 实现<select>标签类似省市级联级联?
如点击 北京 出现所有的北京的区
在html我已经实现了这个,
因为数据是从数据库读取的 所以牵扯到 java与 js的交互
补充:你的省市的数据全在一张表里,还是省用一张表 市/地区用一张表啊

额 与这个没有关系 那个只是个例子
主要是想知道怎么与js交互 从数据库里读出来 用js写到页面
ajax应该可以实现 可我ajax只会做验证
答案:
在你的servlet或者action中通过OUT对象把查询的结果PRINT出来。
例如
out.println("<info>");
if(userList!=null){
for(Iterator i = userList.iterator();i.hasNext();){
PrjXyhrz p = (PrjXyhrz)i.next();
out.println("<nodeId>"+p.getYhDm()+"</nodeId>");
out.println("<nodeName>"+p.getYhMc()+"</nodeName>");
}
}
out.println("</info>");
out.flush();
out.close();
然后在页面上通过JS的回调方法把第2个下拉框的<option>设置为输出的东西
你的省市的数据全在一张表里,还是省用一张表 市/地区用一张表啊
楼主会用structs吗?ajax dwr框架不?
这个应该不是很难
你可以通过<select>的onchange事件,提交表单,
在页面调用查询方法,给这个方法传参数就可以了,这样就可以改变,cityList,countryList....的值
也就获得了你要的效果,你也可以用ajax,其实原理是一样的
都是提交了表单,再调用查询方法,不同的是前一种,只要一个传参方法,
后者,要把获得的List显示在<select>中
function CheckDate(INDate)
{ if (INDate=="")
{return true;}
subYY=INDate.substr(0,4)
if(isNaN(subYY) || subYY<=0){
return true;
}
//×a????·Y
if(INDate.indexOf('-',0)!=-1){separate="-"}
else{
if(INDate.indexOf('/',0)!=-1){separate="/"}
else {return true;}
}
area=INDate.indexOf(separate,0)
subMM=INDate.substr(area+1,INDate.indexOf(separate,area+1)-(area+1))
if(isNaN(subMM) || subMM<=0){
return true;
}

上一个:JS中窗体元素失去焦点是什么意思
下一个:js什么时候用的花括号

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,