<table bgcolor="#000000" id="tb">
          <tr bgcolor="#FFFFFF""><td ></td>
          <td bgcolor="#FFFFFF">用户名</td><td>性别</td><td>手机</td><td>email</td><td>所属地区</td>
          <td>生日</td><td>爱好</td><td>住址</td><td>简介</td></tr>
          
          <c:forEach items="${list}" var="rst" varStatus="status">
             <tr bgcolor="#FFFFFF">             
                <td><input type="checkbox" id="userid" value="${rst.username }+${status.index}"/></td>
                <td>${rst.username }${status.index}</td>
                <td>${rst.sex }</td>
                <td>${rst.mobile }</td>
                <td>${rst.email }</td>
                <td>${rst.area }</td>
                <td>${rst.birthday }</td>
                <td>${rst.hobby }</td>
                <td>${rst.address }</td>
                <td>${rst.introduce }</td>
          </tr>
          </c:forEach>
          
       </table>
       <input type="button" value="获取勾选的数据" onclick="getRows()" />
<script>
    function getRows() {
        var cbs = document.getElementById('tb').getElementsByTagName('input'), rows = [], cells;
        for (var i = 0; i < cbs.length; i++)
            if (cbs[i].checked) {
                cells = cbs[i].parentNode.parentNode.cells;
                rows[rows.length] = { 用户名: cells[1].innerHTML, 性别: cells[2].innerHTML, 手机: cells[3].innerHTML, email: cells[4].innerHTML, 所属地区: cells[5].innerHTML, 生日: cells[6].innerHTML, 爱好: cells[7].innerHTML, 住址: cells[8].innerHTML, 简介: cells[9].innerHTML }
            }
        var item;
        for (i = 0; i < rows.length; i++) {
            item = [];
            for (k in rows[i]) item[item.length] = k + ':' + rows[i][k];
            alert(item.join('\n'));        }
    }
</script>

解决方案 »

  1.   

    问你一个别的问题,struts2配置文件,已经成功了,但是却没有跳转到相应的页面
      

  2.   

    跳转之前是写在iframe中的,成功后,没有跳转到相应的页面
      

  3.   

    没配置对吧,java就晓不得了直接用js location='xxxxxx'跳转也可以
      

  4.   

    版主,再问你个问题
    $("#area option[value='"+qy[2]+"']").attr("selected", true);
    selected=true在ie下不起作用,在ff下前面alert()一下就可以,为什么啊,我怎么改才对啊
      

  5.   

    你那个复选框的ID不应该都叫一样的名字。你那样写,就是全部复选框的名字一样了。
     <td><input type="checkbox" id="userid" value="${rst.username }+${status.index}"/></td>
      

  6.   

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
    <select><option value="1">1</option><option value="2">2</option></select>
    <script>
        $("option[value='2']").attr('selected', true);
    </script>
    没问题啊。高版本的jquery(1.5+)用prop试试,好像attr和prop设置的属性有有点区别,没研究过1.5+的
      

  7.   

    在页面中我写了三个select,当修改时,我要把读到的数据放到select中,然后
    $("#area option[value='"+qy[2]+"']").attr("selected", true);
    这个不起作用
      

  8.   

    你数据还没有返回吧。。是不是用ajax异步加载的,设置选中的代码要放到success回调中
      

  9.   

    返回了有数据的,现在是在之前写上alert(),就可以出来,否则出不来,是为什么 
    alert(qy[0]);
        $("#province option[value='"+qy[0]+"']").attr("selected", true);
        publicLoad("city","getCity.action",qy[0]);
        alert(qy[1]);
        $("#city option[value='"+qy[1]+"']").attr("selected", true);
        publicLoad("area","getCity.action",qy[1]);
        alert(qy[2]);
        $("#area option[value='"+qy[2]+"']").attr("selected", true);
      

  10.   

    都说了数据没返回了。。你加了alert就会挂起下面的代码执行,但是不妨碍ajax数据的返回
      

  11.   

    但是我看ff下的debug,是有数据的
      

  12.   

    “加了alert就会挂起下面的代码执行”啥意思啊
      

  13.   

    publicLoad("city","getCity.action",qy[0]);
        alert(qy[1]);
        $("#city option[value='"+qy[1]+"']").attr("selected", true);你红色那句是用ajax异步初始化city的是吧,这样你发送ajax会没有返回就已经执行到蓝色那句,所以没有效果中间加alert就会挂起蓝色语句的执行,但是不会打断ajax的执行,你点击确定后ajax可能已经返回初始化好city了,所以有效果
      

  14.   

    是不是因为ajax异步的原因,async=true
      

  15.   

    放到你publicLoad函数中初始化完option后执行,多增加一个初始化的值的参数
      

  16.   

    publicLoad("city","getCity.action",qy[0],qy[1]);
      //  alert(qy[1]);
      //  $("#city option[value='"+qy[1]+"']").attr("selected", true);
    function publicLoad(id,url,value,initvalue){
    //其他代码代码
    $.ajax({
    //.....
    success:function(){
    $("#'+id+' option[value='"+initvalue+"']").attr("selected", true);}
    })
    }