Reputation: 2685
I'm trying to find a selector in jQuery that select all inputs that are checkboxes and their name contains a specific word like "top" or "Top". Having trouble b/c its selecting other checkboxes.
Is it possible to use something like:
$("input[name*='top'] type:checkbox").each etc?
Top 1<input type="checkbox" name="Top1" /><br />
Top 2<input type="checkbox" name="Top2" /><br />
Top 3<input type="checkbox" name="Top3" /><br />
Top 4<input type="checkbox" name="Top4" /><br />
Bottom 1<input type="checkbox" name="Bottom1" /><br />
Bottom 2<input type="checkbox" name="Bottom1" /><br />
Bottom 3<input type="checkbox" name="Bottom1" /><br />
Bottom 4<input type="checkbox" name="Bottom1" /><br />
I only want to select the check boxes which contian the word "top" in its name.
Upvotes: 7
Views: 8949
Reputation: 33865
I believe you could combine the :checkbox
selector and the attribute-contains selector:
$("input:checkbox[name*='top']").each();
Not sure if it needs to be case insensitive, in that case you could have a look at this SO question.
Update:
As bažmegakapa points out in his comment, :checkbox
selector is deprecated according to the documentation. Therefor it is probably better to use:
$("input[type=checkbox][name*='top']").each();
Upvotes: 5
Reputation: 144699
you can use start with
selector:
$("input[name^='Top']")
or:
$("input[name^='Top']:checkbox")
Upvotes: 6