dwr传list  我会  ,dwr联动我也会。。但是是用map实现的,现在我想用  返回list的方式实现联动   ,求给个例子。

解决方案 »

  1.   

    消灭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 
        }  
      }
    });
      

  2.   

    没看明白啊!  你这只是对返回的list做了个循环啊!
      

  3.   

    额一定要写全吗?根据第一个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);
    }
      

  4.   

    呵呵,或许你也没怎么看明白,还有我也没说明白,   我说的是联动   
     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这样匹配之类的。。
      

  5.   

    map封装到list里面  传list就OK了
      

  6.   

    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=值;