jsp中怎么 实现两个下拉框 的联动? 不想用Ajax!

xu_sky 2007-08-20 03:47:40
jsp中怎么 实现两个下拉框 的联动?

不想用Ajax!因为是少量的用到联动!
...全文
551 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
swoky 2007-08-20
  • 打赏
  • 举报
回复
那就直接用js算了
function selectCity(v1,v2)
{
var val;
var va2;

val = v1.value;

switch (val) {

case '0' :

var labels = "";

break;

case '天津' :

var labels = new Array("北辰","滨海新区");

break

case '重庆' :

var labels = new Array("重庆","云浮");

break

}

v2.options.length=0;

v2.add(document.createElement("OPTION"));

v2.options[0].text="请选择城市";

v2.options[0].value="";

for(var i = 0; i <labels.length; i++) {

v2.add(document.createElement("OPTION"));

v2.options[i+1].text=labels[i];

v2.options[i+1].value=labels[i];
}

// 选择第一个选项

v2.selectedIndex = 0;
}
---------
使用:
所在省份:
<select name="v_provincename" onchange="javascript: selectCity(this,v_cityname);">
<option value="" selected>请选择</option>
<option value=天津>天津</option>
<option value=重庆>重庆</option>
</select>
城市
<select name="v_cityname"></select>


xu_sky 2007-08-20
  • 打赏
  • 举报
回复
我不会用 Struts 请问用jsp怎么实现!
ws9958 2007-08-20
  • 打赏
  • 举报
回复
var id=new Array(""
<logic:notEmpty name="type"> //type是个list的第二级数据
<logic:iterate id="ty" name="type">
,"<bean:write name="ty" property="personaltypeCategoryId"/>" // id
</logic:iterate>
</logic:notEmpty>
);
var typeid=new Array(""
<logic:notEmpty name="type">
<logic:iterate id="ty" name="type">
,"<bean:write name="ty" property="personaltypeId"/>" // title
</logic:iterate>
</logic:notEmpty>
);
var title=new Array(""
<logic:notEmpty name="type">
<logic:iterate id="ty" name="type">
,"<bean:write name="ty" property="personaltypeTitle"/>" // title
</logic:iterate>
</logic:notEmpty>
);
function onsel(){
var mainid=""+myform.personalCategoryId.value;
var psel=myform.personaltypeId.options;
for(i=psel.length;i>0;i--){
myform.personaltypeId.remove(i);
}
if(mainid=='0')
return;
var sel = document.getElementById('personaltypeId').options;

for(j=1;j<id.length;j++){
if(id[j]==mainid){
var inserto = new Option(typeid[j],title[j]);
sel[sel.length]=new Option(title[j],typeid[j]);
}
}
document.all.personaltypeId.disabled=false;
return true;

}

.....

<select style="width:150px" name="personalCategoryId" onchange="onsel();">
<option value="-1">请选择</option>
<logic:notEmpty name="category">
<logic:iterate id="ca" name="category">
<option
value="<bean:write name='ca' property='personalCategoryId'/>">
<bean:write name="ca" property="personalCategoryTitle" />
</option>
</logic:iterate>
</logic:notEmpty>
</select>

<select style="width:150px" name="personaltypeId" disabled>
<option value="-1">请选择</option>
<logic:notEmpty name="type">
<logic:iterate id="ty" name="type">
<option
value="<bean:write name='ty' property='personaltypeId'/>">
<bean:write name="ty" property="personaltypeTitle" />
</option>
</logic:iterate>
</logic:notEmpty>
</select>

看不懂问我
cocoa2003 2007-08-20
  • 打赏
  • 举报
回复
对的,使用二维数组,下拉框下拉事件时触发。把数组中的值显示出来。
如果都是从数据库中取出的动态值,可以使用逗号“,”把值分隔开,然后下拉事件触发时,解析你拼的值,显示到第二个下拉框
lsj19830812 2007-08-20
  • 打赏
  • 举报
回复
在js里定义2唯数组

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧