如何在同一行中设置另一个字段值

时间:2015-07-26 22:34:30

标签: javascript

给定一个包含5列的网格和第2列中的ID数组,如何为数组中的ID设置第1列的布尔值为true?有25行,5行在数组中。

var ProductIDArray = [2,5,9,12,16]; 
var i; 
for (i = 0; i < ProductIDArray.length; i++) {
    document.getElementById("chk").checked = true; 
}

1 个答案:

答案 0 :(得分:0)

第一个错误:您无法在页面上拥有重复的ID。要么使用类,要么为每个元素使这些ID唯一。

第二个错误:你需要每次在循环中检查不同的元素。

基于此:

  

第1列是复选框列。只有数组中的那些应该选中复选框。其他行不应该检查第1列。

让我们尝试解决它。假设您的复选框ID为chk_N,其中N是与产品ID(chk_1chk_2等相匹配的数字...),代码应如下所示:

var ProductIDArray = [2,5,9,12,16]; 
var i; 
for (i = 0; i < ProductIDArray.length; i++) {
    document.getElementById("chk_" + ProductIDArray[i]).checked = true; 
}

以下是一个例子:

&#13;
&#13;
var ProductIDArray = [2, 5, 9, 12, 16];
var i;
for (i = 0; i < ProductIDArray.length; i++) {
  document.getElementById("chk_" + ProductIDArray[i]).checked = true;
}
&#13;
<input type="checkbox" id="chk_11" />11<br>
<input type="checkbox" id="chk_2" />2<br>
<input type="checkbox" id="chk_33" />33<br>
<input type="checkbox" id="chk_45" />45<br>
<input type="checkbox" id="chk_65" />65<br>
<input type="checkbox" id="chk_5" />5<br>
<input type="checkbox" id="chk_16" />16<br>
<input type="checkbox" id="chk_9" />9<br>
<input type="checkbox" id="chk_12" />12<br>
...
&#13;
&#13;
&#13;