Как я могу получить состояние элемента из флажка appendchild в Javascript? - PullRequest
1 голос
/ 27 января 2012

Я создаю чекбоксы через appendchild.Я хочу иметь возможность проверить их состояние.Я знаю, что формат должен быть document.form.checkboxname.value, но независимо от того, какую комбинацию имени формы или имени чекбокса я использую, он не дает мне ответа.функция ответа, чтобы дать мне предупреждение, если флажок установлен или нет.Спасибо вам большое!Чтобы уточнить, чем заменить форму и флажок в предупреждении (document.form.checkbox.value)?

1 Ответ

3 голосов
/ 27 января 2012

CB_Delete.checked должно работать.См. HTMLInputElement для MDN .

console.log(CB_Delete.checked);

jsFiddle Demo


  • Чтобы установить или снять флажок, вы бы сделали CB_Delete.checked = true или CB_Delete.checked = false соответственно.checked - это свойство объекта, которое, как ожидается, будет иметь логические значения.CB_Delete.checked просто запрашивает его текущее значение.

  • В вашей функции обработчика событий вы можете ссылаться на элемент, который в данный момент обрабатывает событие, как this.Итак, из примера в моем предыдущем jsFiddle:

    CB_Delete.onchange = function () {
        console.log(this.checked); /* this refers to the checkbox here */
    };
    

    Вы также можете использовать this в своей функции answer.

  • Вы можете прочитать больше о обработка событий в Quirksmode .

  • Примечание : Использование CB_Delete.onchange - довольно старый и не очень рекомендуемый способ присоединения обработчиков событий для большинствавремя.Использование CB_Delete.addEventListener('change', answer, false) является правильным способом сделать это.Старые IE будут иметь проблемы с этим, но вместо этого они имеют attachEvent().Вы можете прочитать о этой технике и зачем использовать ее в Quirksmode (статье 3 года, учтите это при чтении таких вещей, как "Unfortunately few browsers support it at the moment.").Чтобы скрыть различия между браузерами, вы можете использовать такую ​​библиотеку, как jQuery .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...