我遇到麻烦来获取类型chekcbox与jQuery的输入这里是我的HTML代码:
<th class="bill" width="19%" scope="col">
<input type="checkbox" name="sup'+i+'" class="bill" value="'+i+'"/>
</th>
在这里你看到我的输入是在一个带有“bill”类的标签内,现在我想在我的复选框上捕获事件并简单地写一条消息。
$('.bill input[type=checkbox]').change(function() {
console.log("it works");
})
但控制台中没有任何内容!我的事件监听器似乎有问题。
答案 0 :(得分:2)
您可以使用click
事件并确定事件触发时是否检查
$('input.bill[type=checkbox]').on('click', function() {
if( $(this).is(':checked') )
console.log("it works");
});
$('input.bill[type=checkbox]').on('click', function() {
//optional logic to determine if checkbox was checked
if( $(this).is(':checked') )
console.log("it works");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<th class="bill" width="19%" scope="col">
<input type="checkbox" name="sup'+i+'" class="bill" value="'+i+'" />
</th>
虽然您也可以像其他人指出的那样使用change
事件。
$('input.bill[type=checkbox]').on('change', function() {
if( $(this).is(':checked') )
console.log("it works");
});
主要的一点是你的选择器不正确,你需要选择:
input
.bill
[type=checkbox]
答案 1 :(得分:1)
你的选择器错误。
$("input.bill[type=checkbox]").change(function() {
console.log("it works");
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<th class="bill" width="19%" scope="col">
<input type="checkbox" name="sup'+i+'" class="bill" value="'+i+'"/>
</th>
这也有效
$("input.bill:checkbox").change(function() {
console.log("it works");
})
答案 2 :(得分:0)
这将有效
$(function() {
$('input[type=checkbox]').change(function(){
console.log("it works");
});
});
答案 3 :(得分:0)
请将ID添加到复选框元素
<th class="bill" width="19%" scope="col">
<input type="checkbox" id="billSup" name="sup'+i+'" class="bill" value="'+i+'"/>
现在你将获得控制台
$('#billSup').on('change', function(){
console.log("it works");
});