none
<求助>根据数组的值,改变checkbox的checked状态。 RRS feed

  • 问题

  • 有一个数组,var test={2,3,4,5,6};

    test数组里的每个值都对应checkbox控件的value,现在需要遍历这些值来改变checkbox的checked状态。

    谢谢! 问题也可以使用用jquery。

    我这里已经写的:
    var items= document.getElementsByName("nowchk");
    for(var e in test)

      items(test[e]).checked=true;
     }
    但是我这边写的有些问题,所以请教大家改怎么写?


    <td>
      <input name="nowchk" id="Checkbox1" type="checkbox" value="1" />1点
    </td>
    <td>
      <input name="nowchk" id="Checkbox4" type="checkbox" value="2" />2点
    </td>
    <td>
      <input name="nowchk" id="Checkbox5" type="checkbox" value="3" />3点
    </td>
    <td>
      <input name="nowchk" id="Checkbox6" type="checkbox" value="4" />4点
    </td>
    <td>
      <input name="nowchk" id="Checkbox7" type="checkbox" value="5" />5点
    </td>
    2012年6月26日 1:54

答案

  • $("input[name=nowchk]").each(function(){
      for(var i=0; i<test.length;i++){
      if($(this).val() == test[i]){
      $(this).attr("checked",true);  
      break;
      }
      }
    });

    上面数组定义错了,是[],不是{}。

    问题已经解决。

    • 已标记为答案 prcSam 2012年6月26日 2:13
    2012年6月26日 2:13