Тестирование, если флажок отмечен с помощью jQuery - PullRequest
575 голосов
/ 27 января 2011

Если флажок установлен, то мне нужно только получить значение как 1;в противном случае мне нужно получить его как 0. Как мне сделать это с помощью jQuery?

$("#ans").val() всегда даст мне одно право в этом случае:

<input type="checkbox" id="ans" value="1" />

Ответы [ 20 ]

4 голосов
/ 19 сентября 2016

Есть несколько вариантов, например ....

 1. $("#ans").is(':checked') 
 2. $("#ans:checked")
 3. $('input:checkbox:checked'); 

Если все эти опции возвращают true, тогда вы можете установить значение соответственно.

4 голосов
/ 18 сентября 2012
function chkb(bool){
if(bool)
return 1;
return 0;
}

var statusNum=chkb($("#ans").is(':checked'));

statusNum будет равно 1, если флажок установлен, и 0, если это не так.

РЕДАКТИРОВАТЬ: Вы также можете добавить DOM к функции.

4 голосов
/ 27 января 2011

Использование:

$("#ans option:selected").val()
3 голосов
/ 28 января 2016

Недавно я рассмотрел случай, когда мне нужно было проверить значение флажка, когда пользователь нажимал кнопку. Единственный правильный способ сделать это - использовать атрибут prop().

var ansValue = $("#ans").prop('checked') ? $("#ans").val() : 0;

это сработало в моем случае, может быть, кому-то это понадобится.

Когда я пытался .attr(':checked'), он возвращал checked, но я хотел логическое значение, а .val() возвращал значение атрибута value.

2 голосов
/ 22 февраля 2013

Попробуйте это

$('input:checkbox:checked').click(function(){
    var val=(this).val(); // it will get value from checked checkbox;
})

Здесь установлен флаг true, если установлен флажок, иначе false

var flag=$('#ans').attr('checked');

Опять это сделает чек

$('#ans').attr('checked',true);
0 голосов
/ 25 сентября 2018
 $("#id").prop('checked') === true ? 1 : 0;
0 голосов
/ 27 июля 2018

Вы можете выполнить это следующим образом:

$('input[id=ans]').is(':checked');     
0 голосов
/ 07 мая 2018

Сначала проверьте значение

$("#ans").find("checkbox").each(function(){
    if ($(this).prop('checked')==true){ 
    var id = $(this).val()
    }
});

Иначе установите значение 0

0 голосов
/ 14 ноября 2016

Если вы хотите, чтобы целочисленное значение проверялось или нет, попробуйте:

$("#ans:checked").length
0 голосов
/ 15 августа 2016

Вы можете получить значение (true / false) с помощью этих двух методов

$("input[type='checkbox']").prop("checked");
$("input[type='checkbox']").is(":checked");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...