40

I want to get checkbox with specfic value and make it checked..

I make like this

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

and here is the 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"/>​

here's a demo of the problem

8 Answers 8

114

You can use Attribute Equals Selector [name="value"] to get the checkboxes with particular value. Also use prop() instead of attr() as that is recommended way by jQuery doc.

Live Demo

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

or

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

Description: Selects elements that have the specified attribute with a value exactly equal to a certain value, jQuery doc.

You can also do it Using attr() but prop is more appropriate for boolean properties.

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

As of jQuery 1.6, the .attr() method returns undefined for attributes that have not been set. To retrieve and change DOM properties such as the checked, selected, or disabled state of form elements, use the .prop() method, jQuery doc

Edit, asked in comments, "How would look like the answer/find-expression with complex values, like value="Smith, David"

You can enclose that kind of values like Smith, David on single quotes. You can even use character used by jQuery like #, ., $ etc, see updated fiddle here.

$("input[type=checkbox][value='#Smith, David$']").attr("checked","true");
Sign up to request clarification or add additional context in comments.

5 Comments

Stole me half an hour: The semicolon in your second code example is kind of evil. When you copy the whole line ($("input[type=checkbox][value=5]").prop("checked",true);) and paste it in your script, SublimeText + JSHint (in my case) will throw the error 'Unexpected'. The browser stops executing your code with the error 'Unexpected token ILLEGAL'. Deleting the semicolon and replacing it with a "fresh" one helped me (imagine my debbuging desperation...) I guess there is a hidden ascii-char or sth
Edit: sorry for double posting: vim showed me the little extra character: $("input[type=checkbox][value=5]").prop("checked",true);<200b>
Sorry to know that the hidden character in the statement bothered you so much. I analyzed, traced and removed it. Thanks for pointing as it could save time of others.
I found character having code 8203, you can find more over here. stackoverflow.com/questions/2973698/…
How would look like the answer/find-expression with complex values, like value="Smith, David"?
11
$(":checkbox").filter(function() {
  return this.value == '5';
}).prop("checked","true");​

DEMO

If you want to use it for different values then make it generic like following:

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


checkWithValue(5);​

DEMO

Comments

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

Comments

2

I had a dynamic values that needed to be looped over. This is what worked for me:

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);
}

Hope that helps someone out.

Comments

1

It works also with square practise

 $(":checkbox").filter(["value":5]).prop("checked","true");

Comments

1

Sometimes we want to get checkbox dynamically for a specific value.

$(document).on('click','.at-filter a', function(){
    var aaa = $(this).parent().find("em").html();
    $("input[type=checkbox][value='"+aaa+"']").prop('checked',false)
});

Comments

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

Comments

0
$("#catalogTBL").find("input[type=checkbox][value='snet']").prop("checked", true);

This was the only way I could get this to work. Looking for a checkbox in a table.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.