Снимите флажок в jquery (с помощью ajax и php) - PullRequest
0 голосов
/ 06 декабря 2011

У меня есть редактируемая таблица ajax, и у меня есть поле «разблокировать» с флажком для каждой строки.

Когда я проверяю чекбокс, мне нужно получить значение 1 (я согласен с этой частью! :)

Мой код для получения значения чекбокса:

($("#unlock_input_" + ID).val();))

Но когда я снимаю галочку с одного из флажков, мне нужно получить значение 0 (мне нужна помощь для этой части)

Итак .... Какя могу сделать это в JQuery?Thx

Ответы [ 4 ]

3 голосов
/ 06 декабря 2011

Вы можете включить :checked селектор.Тогда вы вернетесь undefined, когда флажок снят, что ложно, поэтому:

var result = $("#unlock_input_" + ID + ":checked").val() || 0;

result в конечном итоге получит значение флажка, если он установлен, или 0если нет, то из-за способа необычайно мощный JavaScript-оператор || работает .

Живой пример

Другой способ написать это:

var result = $("#unlock_input_" + ID).filter(":checked").val() || 0;

Или, конечно, более прямолинейно:

var cb = $("#unlock_input_" + ID)[0],
    result = cb.checked ? cb.value : 0;
1 голос
/ 06 декабря 2011

измените свой код на этот (используя prop для запроса свойства selected):

var result = $("#unlock_input_" + ID).prop('checked')?1:0;

EDIT:
, если вам явно необходимозначение вместо 1, просто сделайте:

var element = $("#unlock_input_" + ID);
var result = element.prop('checked')?element.val():0;
1 голос
/ 06 декабря 2011

Вы можете проверить, если он проверен

if($("#unlock_input_" + ID).is(':checked')){
    myVal = "1";
}
else{
    myVal = "0";
}
1 голос
/ 06 декабря 2011

Вы можете использовать свойство checked флажка, чтобы решить, 1 или 0. Попробуйте это

if($("#unlock_input_" + ID)[0].checked){
    alert("1");
}
else{
    alert("0");
}

В качестве предупреждения вы можете использовать метод jQuery is, чтобы проверить, установлен флажок или нет.

if($("#unlock_input_" + ID).is(":checked")){
    alert("1");
}
else{
    alert("0");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...