我正在使用jQuery,我需要在未选中时显示复选框的ID。我怎么能做到这一点?
$('input[type=checkbox]').click(function(){
alert(this.id);
if($(this).is(':unchecked')) {
alert(this.id);
}
});
答案 0 :(得分:8)
查看此 DEMO 以获取有效工作示例。
鉴于你的代码:
$('input[type=checkbox]').click(function(){
alert(this.id);
if($(this).is(':unchecked')) {
alert(this.id);
}
});
您需要将:unchecked
更改为:not(:checked)
。 jQuery从未有过:unchecked
过滤器。除此之外,你相当接近。
$("input[type=checkbox]").on("click", function(){
if($(this).is(":not(:checked)"))
alert(this.id);
});
答案 1 :(得分:2)
更改OP后更新
您可以使用下面给出的长度检查未选中的复选框。
<强> Live Demo 强>
$('input[type=checkbox]').click(function(){
alert(this.id);
if($(this).not(':checked').length) {
alert(this.id);
}
});
$('input[type=checkbox]').click(function(){
if(this.checked)
alert(this.id + " checked");
else
alert(this.id + " un-checked");
});
或
$('input:checkbox').click(function(){
alert($(this).attr('id'));
});
或复选框有class =“chkclass”
$('.chkclass').click(function(){
alert(this.id);
});
答案 2 :(得分:0)
沿着这条线的东西对你有用。
$('input[type=checkbox]').click(function() {
$checkbox = $(this);
if(!$checkbox.is(':checked'))
alert($checkbox .attr("id"));
});
或者,如果有可能动态添加复选框,请使用jquery on()
:
$('input[type=checkbox]').on("click", function() {
$checkbox = $(this);
if(!$checkbox.is(':checked'))
alert($checkbox .attr("id"));
});
答案 3 :(得分:0)
执行以下操作:
$("input[type='checkbox']").live("click", function() {
if (!$(this).attr("checked")) {
alert($(this).attr("id"));
}
});
答案 4 :(得分:0)
没有名为的选择器:未选中“
你差不多了,请尝试:选中
$(function() {
$('input[type="checkbox"]').on('click', function() {
if(! $(this).is(':checked')){
alert( 'ID of the current checkbox is : ' + this.id );
}
})
});