Почему делают мой jQuery checkbox.change события только стреляет в leavefocus в IE, но они происходят onclick в FF?

Простой надежный путь, состоит в том, чтобы добавить столбец версии к Вашим таблицам и сохранить версию Объекта и выбрать соответствующую прикладную логику на основе того номера версии. Таким образом, Вы также получаете назад совместимость для небольшой стоимости. Который всегда является хорош

7
задан MetaGuru 1 October 2009 в 03:25
поделиться

2 ответа

Отслеживание веб-ошибок:

Событие onchange может быть прикреплено (встроено или как обработчик событий) к любому элементу формы. Он срабатывает при изменении значения поля формы. К сожалению, поведение в IE немного странное, поскольку для флажка или поля переключателя событие не срабатывает, когда оно должно быть (прямо когда вы щелкаете параметр, который хотите выбрать), а вместо этого срабатывает только при нажатии в другом месте страницы / формы или при явном вызове размытия (); на поле.

И предлагаемый обходной путь:

<input type="radio" name="foo" value="Green" onclick="alert(this.value);"/>Green
<input type="radio" name="foo" value="Blue" onclick="alert(this.value);"/>Blue
7
ответ дан 7 December 2019 в 05:25
поделиться

Проблема с решением Лукаса в том, что это сработает, даже если вы снова нажмете тот же параметр .

Решением, которое я нашел работающим, было добавление onclick = "this.blur ();" к тегу радиокнопки, который заставляет его запускать onchange только в том случае, если он изменился.

<input type="radio" name="foo" value="Green" onclick="alert(this.value);" onclick="this.onBlur();" />Green
<input type="radio" name="foo" value="Red" onclick="alert(this.value);" onclick="this.onBlur();" />Red

Надеюсь, это поможет.

1
ответ дан 7 December 2019 в 05:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: