有关dwr传list 和 联动的问题 dwr传list 我会 ,dwr联动我也会。。但是是用map实现的,现在我想用 返回list的方式实现联动 ,求给个例子。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 消灭0回复<select id="a"/><select id="b"/>Action.refreshSelect(document.getElementById('a').value,{ callback:function(list) { // code: clear all options of b; for(var i=0; i<list.length; i++) { // code: insert a option } }}); 没看明白啊! 你这只是对返回的list做了个循环啊! 额一定要写全吗?根据第一个select值确定第二个select里的项目。// ================// 假设服务端返回的对象是List<String[]>// 数据如下:list.add(new String[] { "南京", "025" });list.add(new String[] { "镇江", "0511" });// ================for(var i=0; i<list.length; i++) { var opt = document.createElement("option"); opt.text = list[i][0]; opt.value = list[i][1]; document.getElementById('b').options.add(opt);} 呵呵,或许你也没怎么看明白,还有我也没说明白, 我说的是联动 function updateRoomType() { getRoom.getRoomType('<%=session.getAttribute("hotelId".toString())%>',createClass); } function createClass(data) { DWRUtil.removeAllOptions("roomType"); DWRUtil.addOptions("roomType", data); } function updateRoom(){ getRoom.getRoom('<%=session.getAttribute("hotelId".toString())%>',DWRUtil.getValue("roomType"),createRoom); } function createRoom(data){ DWRUtil.removeAllOptions("room"); DWRUtil.addOptions("room",data); } <td width="15%" height="21" class="guming"> 预定规格 </td> <td width="85%" bgcolor="E0F6FF" class="GridHeadertddy" > <select name="roomType" id="roomType" onchange="javascript:updateRoom();"> </select> </td> <td width="15%" height="21" class="guming"> 房间编号 </td> <td width="85%" bgcolor="E0F6FF" class="GridHeadertddy" colspan="4"> <select name="room" id="room"></select> </td>这个是我用map 的方式实现的, dwr是支持map的直接匹配的, 而list则不行list可不可以像map这样匹配之类的。。 map封装到list里面 传list就OK了 var arrayObject = [{ name:'One', value:'1' },{ name:'Two', value:'2' },{ name:'Three', value:'3' },{ name:'Four', value:'4' },{ name:'Five', value:'5' }];DWRUtil.addOptions('addOptionsObject1', arrayObject, "name"); 将数组添加到下拉菜单里面去;后面的参数是确定那个是给用户显示的文本,同时也是值;DWRUtil.addOptions('addOptionsObject1', arrayObject, "name","value"); 同上,不过后面参数是: 3=文本;4=值; 工作了半年任在困惑的菜鸟求指点。 售票线程为啥结果不对? 请问高人:你们怎样学习源代码? resin报错,什么意思啊 为什么不使用spring mvc 帮我看看。要死人了。那里错了~~ [求助]关于如何用httpUnit测试frameset类型的jsp页面? 使用dom4j修改xml文件后,怎么保存修改呢 JBuilder7+Weblogic7+mysql 开发EJB的配置中的问题 请问:如何实现不重启Jboss自动识别新的javabean? 很短很简单的一段代码我就想不通了怎么还会出现错误 java applet 连接数据库问题
<select id="b"/>
Action.refreshSelect(document.getElementById('a').value,{
callback:function(list) {
// code: clear all options of b;
for(var i=0; i<list.length; i++) {
// code: insert a option
}
}
});
// ================
// 假设服务端返回的对象是List<String[]>
// 数据如下:
list.add(new String[] { "南京", "025" });
list.add(new String[] { "镇江", "0511" });
// ================for(var i=0; i<list.length; i++) {
var opt = document.createElement("option");
opt.text = list[i][0];
opt.value = list[i][1];
document.getElementById('b').options.add(opt);
}
function updateRoomType() {
getRoom.getRoomType('<%=session.getAttribute("hotelId".toString())%>',createClass);
}
function createClass(data)
{
DWRUtil.removeAllOptions("roomType");
DWRUtil.addOptions("roomType", data);
}
function updateRoom(){
getRoom.getRoom('<%=session.getAttribute("hotelId".toString())%>',DWRUtil.getValue("roomType"),createRoom);
}
function createRoom(data){
DWRUtil.removeAllOptions("room");
DWRUtil.addOptions("room",data);
}
<td width="15%" height="21" class="guming">
预定规格
</td>
<td width="85%" bgcolor="E0F6FF" class="GridHeadertddy" >
<select name="roomType" id="roomType" onchange="javascript:updateRoom();">
</select>
</td>
<td width="15%" height="21" class="guming">
房间编号
</td>
<td width="85%" bgcolor="E0F6FF" class="GridHeadertddy" colspan="4">
<select name="room" id="room"></select>
</td>这个是我用map 的方式实现的, dwr是支持map的直接匹配的, 而list则不行list可不可以像map这样匹配之类的。。
{ name:'One', value:'1' },
{ name:'Two', value:'2' },
{ name:'Three', value:'3' },
{ name:'Four', value:'4' },
{ name:'Five', value:'5' }
];
DWRUtil.addOptions('addOptionsObject1', arrayObject, "name"); 将数组添加到下拉菜单里面去;后面的参数是确定那个是给用户显示的文本,同时也是值;DWRUtil.addOptions('addOptionsObject1', arrayObject, "name","value"); 同上,不过后面参数是: 3=文本;4=值;