Мониторинг состояния проверки флажка - PullRequest
2 голосов
/ 29 марта 2011

Каков наилучший способ автоматически проверить, был ли флажок (не) установлен. Я знаю, что событие onclick будет отлавливать события щелчка, но что, если другой сценарий изменит состояние флажка «а также кнопка« проверить все »».

Ответы [ 5 ]

2 голосов
/ 29 марта 2011

Вы можете использовать событие «изменить». В IE поведение некорректно, поэтому вам, возможно, придется наблюдать как за кликом, так и за изменением - http://www.quirksmode.org/dom/events/change.html.

1 голос
/ 29 марта 2011

Вы не можете использовать событие изменения для отслеживания программных изменений (изменений, не вызванных щелчком) для флажка. Таким образом, вам придется создать свой собственный монитор. Одним из способов является использование setInterval для периодической проверки. Что-то вроде: setInterval(checkstate,2000);. Посмотрите это это jsfiddle чтобы увидеть пример в действии.

1 голос
/ 29 марта 2011

с использованием свойства checked и события CheckboxStateChange. Хотя я не знаю о совместимости.

https://developer.mozilla.org/en/XUL/checkbox

https://developer.mozilla.org/en/XUL/Events

http://www.javascriptkit.com/javatutors/radiocheck.shtml

0 голосов
/ 29 марта 2011

Другие сценарии должны инициировать установку флажка в самом коде.Событие будет пузыриться, даже если оно инициировано из скрипта.Вот пример, если вы заинтересованы -> http://jsfiddle.net/qSRzM/1/

0 голосов
/ 29 марта 2011

Вы можете определить одну глобальную переменную в java-скрипте и изменить ее состояние на флажок
или не отмечен при клике, который меняет состояние флажка, а при изменении другого скрипта
состояние флажка

...