Тип ввода HTML5 = шаг изменения номера

Если я использую поле ввода типа = & quot; число & quot; с шагом = "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.

Ответы на вопрос(8)

Ваш ответ на вопрос