我有一个复选框列表:

<input type="checkbox" name="answer" id="id_1' value="1" />
<input type="checkbox" name="answer" id="id_2' value="2" />
...
<input type="checkbox" name="answer" id="id_n' value="n" />

我可以收集已选中复选框的所有值; 我的问题是如何获得未选中复选框的所有值? 我试过了:

$("input:unchecked").val();

得到一个未经检查的复选框的值,但我得到了:

语法错误,无法识别的表达式:未选中。

任何人都可以解释这个问题吗? 谢谢!

===============>>#1 票数:401 已采纳

正如错误消息所述,jQuery不包含:unchecked selector。
相反,您需要反转:checked选择器:

$("input:checkbox:not(:checked)")

===============>>#2 票数:26

$("input:checkbox:not(:checked)")将为您提供未选中的复选框。

===============>>#3 票数:10

$.extend($.expr[':'], {
        unchecked: function (obj) {
            return ((obj.type == 'checkbox' || obj.type == 'radio') && !$(obj).is(':checked'));
        }
    });


$("input:unchecked")

===============>>#4 票数:3

也可以用这样的方式用纯js来实现:

var matches = document.querySelectorAll('input[type="checkbox"]:not(:checked)');

===============>>#5 票数:2

$("input[type='checkbox']:not(:checked):not('\#chkAll\')").map(function () { 
   var a = ""; 
   if (this.name != "chkAll") { 
      a = this.name + "|off"; 
   } 
   return a; 
}).get().join();

这将检索所有未选中的复选框,并排除我用来检查|取消选中所有复选框的“chkAll”复选框。 因为我想知道我传递给数据库的值是什么,所以我将它们设置为off,因为复选框给我一个值on。

//looking for unchecked checkboxes, but don’t include the checkbox all that checks or unchecks all checkboxes
//.map - Pass each element in the current matched set through a function, producing a new jQuery object containing the return values.

//.get - Retrieve the DOM elements matched by the jQuery object.
//.join - (javascript) joins the elements of an array into a string, and returns the string.The elements will be separated by a specified separator. The default separator is comma (,).

===============>>#6 票数:2

你可以像这样使用:

$(":checkbox:not(:checked)")

===============>>#7 票数:0

$(".clscss-row").each(function () {
if ($(this).find(".po-checkbox").not(":checked")) {
               // enter your code here
            } });

===============>>#8 票数:0

要按class选择,您可以这样做:

$("input.className:checkbox:not(:checked)")

  ask by Gary translate from so

未解决问题?本站智能推荐:

8回复

用jQuery选中所有复选框

而这个html 由于某种原因不起作用。 没有警报框或什么也没有。
1回复

选中复选框时启用多个复选框

我有5个文本框,它们的ID和名称互不相同。 但是,当选中某个复选框时,我必须启用所有5个文本框。 如何使用JavaScript执行此操作?
4回复

选中复选框时,使用JQuery自动填充表单

我正在尝试使用JQuery检查复选框时填写表单输入。 这是我尝试过的: HTML: 理想情况下,当选中复选框时,表单输入将填充“我是CEO,婊子”并被锁定。 JQuery的: }; 但它不起作用,我无法从firebug获取错误消息。 任何建议都会非常有帮助。
1回复

选中复选框,重置输入

我有 输入和复选框。 我的目标 是当用户在输入框中更改某些内容时,我要开始显示set to default复选框。 然后,当set to default复选框为check ,我想将原始值重新设置为该输入。 这是我尝试过的 的HTML jQu
2回复

jQuery在输入文本框中显示了选中的复选框值,并且取消选中将删除

我一直在尝试找到标题中所述的解决方案,其中当您有多个复选框并且当您选中带有诸如“ blood”之类的值的复选框时,将添加到输入文本框中。 文本框中的每个选中值都将以空格或逗号分隔。 取消选中复选框时,与之对应的值将从文本框中删除。 到目前为止,我遇到的最接近的示例就是以下示例: 按单击
3回复

如何检查所有唯一命名的复选框中的至少一个选项是否已选中?

如何使用Jquery从每个唯一命名的复选框组中检查至少一个选项被选中? 这些复选框是动态生成的,唯一命名的复选框的总数将有所不同... 到目前为止,我已经尝试过了:
1回复

JavaScript复选框树-自动选中子级

乡亲们! 我有一个小问题,就是这种情况: 树状视图 我让树根据“ lvl”创建。 也就是说,Bereich ABC是lvl1,Test1.docx是lvl4,依此类推。 这是一棵“假”树。 但是我只是每个对象的lvl信息。 我必须选中复选框,如果单击了父级。 这意味着,如果
3回复

如果选中复选框,则显示div

我正在尝试构建类似wordpress选项的东西,以便在创建和文章时切换字段可见性。 我构建的是依赖于使用相应字段名称切换父级的$.click函数,我想知道如果勾选复选框,最好的方法是什么,因为我的代码会搞乱,如果你检查一个框并重新加载页面,因为它是一个点击,而不是实际检查框。 提前致谢!
2回复

选中复选框时,将隐藏的输入类型更改为文本

我只是想知道在选中复选框按钮时将输入类型从隐藏更改为文本的最佳方法是什么。 我正在寻找这样的东西 然后选中一个复选框
3回复

jQuery:如何同时验证复选框和输入文本?

我有一个div,其中有2个复选框和2个输入文本,但我想验证或检查是否所有输入都为空以显示警报或错误,并且至少填充了一个输入(复选框或文本),因为我不这样做两个验证:1表示复选框,2表示输入文本...是否存在执行此操作的方法? HTML 提前致谢!!