HTML5 номер Spinbox управляет, не вызывая событие изменения? - PullRequest
4 голосов
/ 10 февраля 2011

В настоящее время мы используем jQuery для запуска пересчета в поле ввода формы. Используя HTML5, в Safari мы получаем красивые спинбоксы (по крайней мере, на 5.0.3 Mac). Однако обновление поля с помощью элементов управления spinbox, по-видимому, вообще не вызывает событие изменения. Это как поле не было обновлено. Это просто недосмотр в WebKit? Или есть способы обойти это?

Редактировать: изменение spinbox даже не вызывает событие ввода.

Ответы [ 4 ]

1 голос
/ 15 апреля 2011

$. Click () работает нормально.Если вы нажмете и удержите, этого не произойдет, пока вы не отпустите.

0 голосов
/ 06 мая 2011

Это работает для меня в Chrome 11 и Opera 11.10:

<fieldset class="col" oninput="exoutput.value = exnumber.valueAsNumber * exnumber.valueAsNumber;"> 
    <legend>Output event handler</legend> 
    <label for="exnumber">Number: </label> 
    <input type="number" id="exnumber" placeholder="Enter a number" min="0" value="4" required>  
    <label for="exoutput">Output: </label> 
    <output for="exnumber" id="exoutput">16</output> 
</fieldset>

Firefox 4 не использует valueAsNumber, но незначительное изменение заставляет его работать во всех трех . Извините, у меня нет Safari для тестирования прямо сейчас.

0 голосов
/ 11 февраля 2011

Вы хотите использовать событие oninput. Используйте что-то вроде $("...").bind("input", fn);.

См. http://msdn.microsoft.com/en-us/library/gg592978(VS.85).aspx

0 голосов
/ 10 февраля 2011

событие изменения запускается, когда вход теряет фокус и значение изменяется, при нажатии на спин-бокс ввод не теряет фокус, поэтому событие изменения не будет запущено.

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