34

特定の値のチェックボックスを取得してチェックしたい。

私はこのように作ります

$(":checkbox").filter({"value":5}).attr("checked","true");​

これがhtmlです

​<input type="checkbox" name="priv"​​​​​​​​​​​​​​​​​​​​​​​​​​​​​ value="1"​​​​​​​​​​​​​​​​​/>
<input type="checkbox" name="priv" value="2"/>
<input type="checkbox" name="priv" value="3"/>
<input type="checkbox" name="priv" value="4"/>
<input type="checkbox" name="priv" value="5"/>
<input type="checkbox" name="priv" value="6"/>
<input type="checkbox" name="priv" value="7"/>
 <input type="checkbox" name="priv" value="8"/>​

これが問題のデモです

4

8 に答える 8

103

Attribute Equals Selector [name = "value"]を使用して、特定の値のチェックボックスを取得できます。また、 attr( )の代わりにprop()を使用します。これは、 jQuerydocで推奨されている方法です。

ライブデモ

$(":checkbox[value=4]").prop("checked","true");

また

$("input[type=checkbox][value=5]").prop("checked",true);

説明:特定の値、jQuerydocと完全に等しい値を持つ指定された属性を持つ要素を選択します。

attr()を使用してそれを行うこともできますが、ブール型のプロパティにはpropの方が適しています。

$(":checkbox[value=4]").attr("checked","true");

jQuery 1.6以降、.attr()メソッドは、設定されていない属性に対して未定義を返します。フォーム要素のチェック状態、選択状態、無効状態などのDOMプロパティを取得して変更するには、.prop()メソッド、jQuerydocを使用します

編集、コメントで尋ねられた、「value = "Smith、Davidのような複雑な値を持つanswer/find-expressionはどのように見えるでしょうか"

Smith、Davidなどの種類の値を一重引用符で囲むことができます。#、。、$などのjQueryで使用される文字を使用することもできます。更新されたフィドルはこちらをご覧ください。

$("input[type=checkbox][value='#Smith, David$']").attr("checked","true");
于 2012-06-07T10:32:45.940 に答える
11
$(":checkbox").filter(function() {
  return this.value == '5';
}).prop("checked","true");​

デモ

さまざまな値に使用する場合は、次のように一般的にします。

function checkWithValue(val) {
    $(":checkbox").filter(function() {
        return this.value == val;
    }).prop("checked", "true");
}


checkWithValue(5);​

デモ

于 2012-06-07T10:43:12.787 に答える
4
$("input:checkbox[value='5']").attr("checked","true")
于 2012-06-07T10:42:29.230 に答える
2

ループする必要のある動的な値がありました。これは私のために働いたものです:

for (var i = 0, len = value.length; i < len; i++) {
  $("#form-name").find("input[type=checkbox][name='fName']").filter(function () {
    return this.value == values[i];
  }).prop("checked", true);
}

それが誰かを助けることを願っています。

于 2016-07-23T19:33:45.200 に答える
1

スクエアプラクティスでも機能します

 $(":checkbox").filter(["value":5]).prop("checked","true");
于 2012-06-07T10:43:47.860 に答える
1

特定の値のチェックボックスを動的に取得したい場合があります。

$(document).on('click','.at-filter a', function(){
    var aaa = $(this).parent().find("em").html();
    $("input[type=checkbox][value='"+aaa+"']").prop('checked',false)
});
于 2018-08-01T13:25:25.387 に答える
0
$(":checkbox[value=5]").attr("checked",true);​​​
于 2012-06-07T10:33:45.303 に答える
0
$("#catalogTBL").find("input[type=checkbox][value='snet']").prop("checked", true);

これが私がこれを機能させる唯一の方法でした。テーブル内のチェックボックスを探しています。

于 2015-04-08T21:29:07.683 に答える