解决方案 »

  1.   

    你单击事件只能加载td上,而复选框也在td,所以你可以给改行的td一个规范的id命名方式,通过单击的td的id去定位该行复选框的td的id,然后定位的checkbox,这就ok了!
      

  2.   


    <script type="text/javascript">
    function choose(tr_id){
    //此处还可以加上css 
    //document.getElementById('tr_id').style="";或者document.getElementById('tr_id').className=""
    var checkvalue =tr_id.substring(2);
    var chekboxs = document.getElementsByName('chk');
    for(var i=0;i<chekboxs.length;i++){
    if(chekboxs[i].value==checkvalue){
    if(chekboxs[i].checked){
    chekboxs[i].checked=false;
    }else{
    chekboxs[i].checked=true;
    }
    }
    }
    }
    </script>
    <table border="1" width="100">
      <tr hight='50' id="tr1"  onclick="choose('tr1')"><!--id用一个固定的字符串拼checkbox的value -->
        <td ><input type="checkbox" name="chk" value="1"></td><td>1234</td>
      </tr>
      <tr hight='50' id="tr2" onclick="choose('tr2')">
        <td ><input type="checkbox" name="chk" value="2"></td><td>5678</td>
      </tr>
      </table>
      

  3.   

    补充一下 最好是用ondblclick 双击事件
      

  4.   

    jquery写法:
    $(function(){
       $("tr").toggle(
         function(){
            $(this).find(":checked").attr("checked",true);
         },function(){
             $(this).find(":checked").attr("checked",false);
         }
       );
    });
      

  5.   

    你把选中复选框的事件添加到 tr 上不就可以在点击 tr 是触发了吗