无法测试每个循环中检查的输入
can't test for input checked in each loop
我有一个简单的输入复选框元素对象,我想在每个循环中检查哪些被选中并执行哪些操作。复选框在一个 tr
中在几个 td
中在 table.
中
这是我的代码:
$('table.occupancy-table').on('change', '.minimum_stay input', function() {
var minimumStayInputs = $(this).closest('tr').find('input');
$(minimumStayInputs).each(function(){
if(this.prop('checked')) {
//do stuff
}
}
}
如果我在每个循环中 console.log this
,我得到的数据如下:
<input id="R11520" type="checkbox" name="minimum_stay[152][1442786400]" value="checked">
<input id="R11521" type="checkbox" name="minimum_stay[152][1442872800]" value="checked">
...
但我总是从 this.prop('checked')
收到错误 Uncaught TypeError: this.prop is not a function
。我也试过 .is(":checked")
结果相同。
知道原因是什么吗?
如果您需要示例 html,请告诉我,否则我应该创建 fiddle。
this
循环内是原生 DOM 元素,从 jQuery.
展开
又得包起来
$('table.occupancy-table').on('change', '.minimum_stay input', function() {
var minimumStayInputs = $(this).closest('tr').find('input');
$(minimumStayInputs).each(function(){
if ( $(this).prop('checked') ) {
}
});
});
您也可以只使用原生 this.checked
,或者如果您要计算它们
$(this).closest('tr').find('input:checked').length
我有一个简单的输入复选框元素对象,我想在每个循环中检查哪些被选中并执行哪些操作。复选框在一个 tr
中在几个 td
中在 table.
这是我的代码:
$('table.occupancy-table').on('change', '.minimum_stay input', function() {
var minimumStayInputs = $(this).closest('tr').find('input');
$(minimumStayInputs).each(function(){
if(this.prop('checked')) {
//do stuff
}
}
}
如果我在每个循环中 console.log this
,我得到的数据如下:
<input id="R11520" type="checkbox" name="minimum_stay[152][1442786400]" value="checked">
<input id="R11521" type="checkbox" name="minimum_stay[152][1442872800]" value="checked">
...
但我总是从 this.prop('checked')
收到错误 Uncaught TypeError: this.prop is not a function
。我也试过 .is(":checked")
结果相同。
知道原因是什么吗?
如果您需要示例 html,请告诉我,否则我应该创建 fiddle。
this
循环内是原生 DOM 元素,从 jQuery.
又得包起来
$('table.occupancy-table').on('change', '.minimum_stay input', function() {
var minimumStayInputs = $(this).closest('tr').find('input');
$(minimumStayInputs).each(function(){
if ( $(this).prop('checked') ) {
}
});
});
您也可以只使用原生 this.checked
,或者如果您要计算它们
$(this).closest('tr').find('input:checked').length