Выбирается событие для переключателя?
Есть ли какое-то событие для выбора переключателя?
Я знаю, что могу использовать "click", но я считаю, что в некоторых браузерах можно настраивать радиокнопки таким образом, чтобы щелкнуть по области фокуса радиокнопки не удалось выбрать радиокнопку.
Какое событие следует использовать?
Ответы
Ответ 1
Это зависит от того, когда вы хотите получать информацию о событии.
Если вы хотите узнать сразу, перейдите к click
. IE обновляет состояние checked
до вызова функции обработчика, и я думаю, что другие браузеры тоже работают. Вы можете дважды проверить, так как сейчас у меня есть только IE.
Если вам нужно только знать, прежде чем что-то еще произойдет, вы можете использовать change
. IE не запускает событие change
до тех пор, пока выбранный переключатель не потеряет фокус. FF/chrome/others могут запускать событие без изменения фокуса, но я считаю, что IE действительно делает это правильно в этом случае.
Ответ 2
Вы можете использовать событие onchange
, которое будет срабатывать при изменении выбора радио (т.е. при первом нажатии переключателя в группе или при изменении выбора в группе).
См. http://jsfiddle.net/P9Z9Y/1/ для простого примера (нажатие на метку или на самой радиокнопке вызовет alert
, если радио изменение значения группы).
Ответ 3
Вы пытались использовать событие onchange?