[javascript] Тестирование, если флажок установлен с помощью jQuery


7 Answers

$("#ans").attr('checked') 

скажет вам, проверено ли оно. Вы также можете использовать второй параметр true / false для проверки / снятия флажка.

$("#ans").attr('checked', true);

Для комментариев используйте prop а не attr когда они доступны. Например:

$("#ans").prop('checked')
Question

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

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

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



function chkb(bool){
if(bool)
return 1;
return 0;
}

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

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

EDIT: вы также можете добавить DOM к функции.

function chkb(el){
if(el.is(':checked'))
return 1;
return 0;
}

var statusNum=chkb($("#ans"));



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

Jquery: var test= $("#ans").is(':checked') и возвращает true или false.

В вашей функции:

$test =($request->get ( 'test' )== "true")? '1' : '0';



$('input:checkbox:checked').val();        // get the value from a checked checkbox



// use ternary operators
$("#ans").is(':checked') ? 1 : 0;



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

$('#studentTypeCheck').is(":checked");



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

$("input[type='checkbox']").prop("checked");
$("input[type='checkbox']").is(":checked");



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

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

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

Когда я пробовал .attr(':checked') он возвращал checked но мне нужно значение boolean и возвращаемое значение значения .val() значения атрибута.




Related