jQuery判断checkbox是否选中的3种方法

jQuery判断checkbox是否选中的3种方法

<style>
        html {
              font-family: sans-serif;
            }

            form {
              width: 600px;
              margin: 0 auto;
            }

            div {
              margin-bottom: 10px;
            }

            fieldset {
              background: cyan;
              border: 5px solid blue;
            }

            legend {
              padding: 10px;
              background: blue;
              color: cyan;
            }

            #otherValue
            {
              display: none;
            }

            #other:checked ~ #otherValue
            {
              display: inline-block;
            }
    </style>
<form>
  <fieldset>
  <legend>Choose your interests</legend>
    <div>
      <input type="checkbox" id="coding" name="interest" value="coding">
      <label for="coding">Coding</label>
    </div>
    <div>
      <input type="checkbox" id="music" name="interest" value="music">
      <label for="music">Music</label>
    </div>
    <div>
      <input type="checkbox" id="art" name="interest" value="art" checked>
      <label for="art">Art</label>
    </div>
    <div>
      <input type="checkbox" id="sports" name="interest" value="sports" checked>
      <label for="sports">Sports</label>
    </div>
    <div>
      <input type="checkbox" id="cooking" name="interest" value="cooking" checked>
      <label for="cooking">Cooking</label>
    </div>
    <div>
      <input type="checkbox" id="other" name="interest" value="other">
      <label for="other">Other</label>
      <input type="text" id="otherValue" name="other">
    </div>
    <div>
      <button type="submit">Submit form</button>
    </div>
  </fieldset>
</form>
方法一(建议):
if ($("#checkbox-id").get(0).checked) {
    // do something
}
感谢豆瓣绿补充:
if ($("#checkbox-id")[0].checked) {
    // do something
}

方法二(建议):
if($('#checkbox-id').is(':checked')) {
    // do something
}
方法三(可能无效):
if ($('#checkbox-id').attr('checked')) {
    // do something
}


方法四:
if ($('#checkbox-id').prop('checked')) {
    // do something
}

jquery判断checked的三种方法:

.attr('checked); //看版本1.6+返回:”checked”或”undefined” ;1.5-返回:true或false
.prop('checked'); //16+:true/false
.is(':checked'); //所有版本:true/false//别忘记冒号哦

jquery赋值checked的几种写法:
所有的jquery版本都可以这样赋值:
// $("#cb1").attr("checked","checked");
// $("#cb1").attr("checked",true);
jquery1.6+:prop的4种赋值:
// $("#cb1″).prop("checked",true);//很简单就不说了哦
// $("#cb1″).prop({checked:true}); //map键值对

jquery对checkbox的各种操作

//注意: 操作checkbox的checked,disabled属性时jquery1.6以前版本用attr,1.6以上(包含)建议用prop

    //1、根据id获取checkbox
    $("#cbCheckbox1");

    //2、获取所有的checkbox
    $("input[type='checkbox']");//or
    $("input[name='cb']");

    //3、获取所有选中的checkbox
    $("input:checkbox:checked");//or
    $("input:[type='checkbox']:checked");//or
    $("input[type='checkbox']:checked");//or
    $("input:[name='ck']:checked");

    //4、获取checkbox值
    //用.val()即可,比如:
    $("#cbCheckbox1").val();


    //5、获取多个选中的checkbox值
    var vals = [];
    $('input:checkbox:checked').each(function (index, item) {
        vals.push($(this).val());
    });
    
    //6、判断checkbox是否选中(jquery 1.6以前版本 用  $(this).attr("checked"))
    $("#cbCheckbox1").click(function () {
        if ($(this).prop("checked")) {
            alert("选中");
        } else {
            alert("没有选中");
        }
    });

    //7、设置checkbox为选中状态
    $('input:checkbox').attr("checked", 'checked');//or
    $('input:checkbox').attr("checked", true);

    //8、设置checkbox为不选中状态
    $('input:checkbox').attr("checked", '');//or
    $('input:checkbox').attr("checked", false);

    //9、设置checkbox为禁用状态(jquery<1.6用attr,jquery>=1.6建议用prop)
    $("input[type='checkbox']").attr("disabled", "disabled");//or
    $("input[type='checkbox']").attr("disabled", true);//or
    $("input[type='checkbox']").prop("disabled", true);//or
    $("input[type='checkbox']").prop("disabled", "disabled");

    //10、设置checkbox为启用状态(jquery<1.6用attr,jquery>=1.6建议用prop)
    $("input[type='checkbox']").removeAttr("disabled");//or
    $("input[type='checkbox']").attr("disabled", false);//or
    $("input[type='checkbox']").prop("disabled", "");//or
    $("input[type='checkbox']").prop("disabled", false);
posted @ 2023-05-11 07:35  布衣梦蝶1978  阅读(345)  评论(0编辑  收藏  举报