Если я использую поле ввода типа = "число" с шагом = "100". Я не хочу, чтобы нечетные числа были недопустимыми. Я просто хочу увеличить или уменьшить значение со значением 1000.
<input type="number" min="100" max="999999" step="100" />
Если пользователь вводит значение "199" и отправляет его, он получает ошибку, потому что значение не делится на 100. Но все, что я хочу с помощью шага, - это управление поведением счетчика, например. если пользователь щелкнет, я хочу, чтобы значение 199 становилось 200, и если он/она щелкнет вниз, я хочу, чтобы он стал 100. Или в идеале я хотел бы, чтобы значение было увеличено или уменьшено со значением 100.
Как мне это сделать? Я попытался использовать недопустимое событие (с jQuery 1.7.2) следующим образом:
$( "[type='number']" ).bind( 'invalid', function( e ) {
var el = $( this ),
val = el.val( ),
min = el.attr( 'min' ),
max = el.attr( 'max' );
if ( val >= min && val <= max ) {
return false;
}
} );
Но это приводит к тому, что форма не отправляется.
PS: Это в Google Chrome 20.0.1132.57 на Fedora 16.