我有一个具有以下结构的表,其中每行的第一个TD包含一个复选框。我有一个隐藏字段,其中包含行的第二个TD的逗号分隔值,其复选框必须被选中(如果隐藏字段包含值第二个TD,标记第一个复选框已选中)。像我有隐藏字段,其中包含值“00-0227101-,01-123456789 - ”。现在基于此,我必须选中标记复选框。什么是有效的方法这样做?我有数千行。我的方法是溢出隐藏字段,然后在每个TD中找到该值,然后选中复选框。
<tr class="tbs_tr" style="background-color: #ffffff;" jQuery1368711830388="355">
<TD style="WIDTH: 20px" class=tbs_td><INPUT class=search value=0 type=checkbox name=search jQuery1368711830388="356"></TD>
<TD class=tbs_td>00-0227101-</TD>
<TD class=tbs_td>1</TD>
<TD class=tbs_td> </TD>
<TD class=tbs_td>Medak</TD>
<TD class=tbs_td>02/27/2013</TD>
<TD style="BORDER-RIGHT: medium none" class=tbs_td>02/01/2013</TD>
</tr>
<tr class="tbs_tr" style="background-color: #ffffff;" jQuery1368711830388="355">
<TD style="WIDTH: 20px" class=tbs_td><INPUT class=search value=1 type=checkbox name=search jQuery1368711830388="358"></TD>
<TD class=tbs_td>01-123456789-</TD>
<TD class=tbs_td>1</TD>
<TD class=tbs_td>2010 Acura CSX 4D Sed</TD>
<TD class=tbs_td>Insured Ln, Insured Firstname</TD>
<TD class=tbs_td>03/05/2013</TD>
<TD style="BORDER-RIGHT: medium none" class=tbs_td>03/05/2013</TD>
</tr>
<tr class="tbs_tr" style="background-color: #ffffff;" jQuery1368711830388="355">
<TD style="WIDTH: 20px" class=tbs_td><INPUT class=search value=2 type=checkbox name=search jQuery1368711830388="360"></TD>
<TD class=tbs_td>01-4444-44401</TD>
<TD class=tbs_td>01</TD>
<TD class=tbs_td>2001 Toyota Tundra 2 Door Pickup 128" WB 8 Foot Bed</TD>
<TD class=tbs_td>Naveen</TD>
<TD class=tbs_td>02/11/2013</TD>
<TD style="BORDER-RIGHT: medium none" class=tbs_td>02/10/2013</TD>
</tr>
答案 0 :(得分:1)
一种方法是使用for循环来创建td元素,当你这样做时,你应该有一个带有值的数组(而不是逗号分隔的隐藏值)并检查转到第二个td的值是否为在您拥有的数组中。如果是,请将复选框设置为true。
另一种方法是使用jquery:
//get the value of the hidden field.
var hidden = $('input[name=zyx]').val();
//split the string to get an array
var array = hidden.split(',');
//For each tr get the second td's value and see if it's in an array.
$("table tbody tr").each(function() {
var value = $(this).children('td').slice(0, 2).text();
if ($.inArray(value, array) > -1)//if it is, check the box in the previous td
{
$(this).children('td').slice(0,1).find('input:checkbox').attr("checked",true);
}
});
虽然上述代码未经测试且可能无法立即生效,但我相信它会让您走上正确的道路。