我想遍历一个表并获取特定行中输入的值。如果该值为0
,则禁用该行中的所有输入。
这是我最近的失败尝试。
$('.hiderow-0 input[id*="Quantity"]').each(function() {
if($(this ).val() == 0){
$(this).closest('tr').find("input,button,textarea").attr('disabled',true);
}
});
示例HTML
<table>
<tr class='hiderow-0'><td><select name="data[TransactionItem][0][quantity]" id="TransactionItem0Quantity">
<option value="0" selected="selected">0</option>
<option value="1">1</option>
<option value="2" >2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select></td>
<td><input name="data[TransactionItem][0][note]" value="" maxlength="100" type="text" id="TransactionItem0Note"/></td>
<td><input type="checkbox" name="data[TransactionItem][0][waitlisted]" class="waitlisted" options="0 1" value="1" id="TransactionItem0Waitlisted"/>
</td></tr>
</table>
答案 0 :(得分:1)
试试这个
$(this).closest("tr:input").attr("disabled", "disabled");
答案 1 :(得分:0)
你想要.prop('disabled', true)
。 .attr()
更改HTML属性。 .prop() vs .attr()
答案 2 :(得分:0)
在我使用选择而不是输入后得到它
Persons
$('.hiderow-0 select[id*="Quantity"]').each(function() {
if($(this).val() == 0){
$(this).closest('tr').find("input,select").attr('disabled',true);
}
});