在jQuery中获取复选框值

jQuery HTML

村村LEY

2020-03-19

如何在jQuery中获得复选框的值?

第2279篇《在jQuery中获取复选框值》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

5个回答
HarryHarry 2020.03.19

Here is how to get the value of all checked checkboxes as an array:

var values = (function() {
                var a = [];
                $(".checkboxes:checked").each(function() {
                    a.push(this.value);
                });
                return a;
            })()
Sam飞云 2020.03.19
jQuery(".checkboxClass").click(function(){
        var selectedCountry = new Array();
        var n = jQuery(".checkboxClass:checked").length;
        if (n > 0){
            jQuery(".checkboxClass:checked").each(function(){
                selectedCountry.push($(this).val());
            });
        }
        alert(selectedCountry);
    });
西里小胖小卤蛋 2020.03.19

简单但有效,并且假定您知道将找到该复选框:

$("#some_id")[0].checked;

true/false

JinJin凯梅 2020.03.19

检索复选框值的唯一正确方法如下

if ( elem.checked ) 
if ( $( elem ).prop( "checked" ) ) 
if ( $( elem ).is( ":checked" ) ) 

如jQuery网站上的官方文档所述。其余方法与复选框属性无关,它们正在检查属性,这意味着它们正在测试复选框在加载时的初始状态。简而言之:

  • 当您拥有该元素并且知道它是一个复选框时,您只需读取其属性即可,而您将不需要jQuery(即elem.checked),或者$(elem).prop("checked")如果您想依赖jQuery,也可以使用它。
  • 如果您需要知道(或比较)元素首次加载时的值(即默认值),则正确的方法是$(elem).is(":checked")

答案有误导性,请检查以下内容:

http://api.jquery.com/prop/

飞云飞云 2020.03.19

试试这个小解决方案:

$("#some_id").attr("checked") ? 1 : 0;

要么

$("#some_id").attr("checked") || 0;

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android