#jquery #checkbox
#jquery #флажок
Вопрос:
у меня есть этот флажок с другим именем, но все имена начинаются с CheckUser
<input type="checkbox" value="60176694447" name="checkUser52106">
<input type="checkbox" value="60176694448" name="checkUser52107">
<input type="checkbox" value="60176694449" name="checkUser52108">
Быстрый поиск в Google принес мне эту функцию из sitepoint
$(function(){
$('#btnClick').click(function(){
var val = [];
$(':checkbox:checked').each(function(i){
val[i] = $(this).val();
});
});
});
Прямо сейчас я хочу получить все значение выбранного флажка с именем, начинающимся с CheckUser. Как этого добиться?
Ответ №1:
Используйте атрибут StartsWith selector:
$(':checkbox[name^="checkUser"]:checked').each(function(i){
val[i] = $(this).val();
});
Вместо этого вы можете использовать .map
для более короткого решения:
var val = $(':checkbox[name^="checkUser"]:checked').map(function(){
return this.value;
}).get();
Ответ №2:
Используйте селектор типов CSS3, подобный этому
$('input[name=~"checkUser"]:checked').each( function(idx) {
val[idx] = $(this).val();
});
Редактировать: о, тот же точный ответ, что и выше: P