Si uso un campo de entrada de tipo = "número" con paso = "100". No quiero que los números impares sean inválidos. sólo quiero aumentar o disminuir para estar con un valor de 1000.Tipo de entrada HTML5 = comportamiento de paso de cambio de número
<input type="number" min="100" max="999999" step="100" />
Si el usuario introduce el valor "199" y se somete, él/ella recibe un error porque el valor no es divisible por 100. Pero todo lo que quiero con el valor de paso es controlar el comportamiento de la ruleta, por ejemplo si el usuario hace clic arriba quiero que el valor 199 se convierta en 200 y si hace clic abajo quiero que se convierta en 100. O idealmente me gustaría que el valor se aumente o disminuya con un valor de 100.
Cómo ¿Hago esto? He intentado utilizar el evento no válido (con jQuery 1.7.2) así:
$("[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;
}
});
Pero esto se traduce en el formulario no se envía.
PS .: Esto está en Google Chrome 20.0.1132.57 en Fedora 16.
no estoy Seguro que vas a ser capaz de evitar esto. Es posible que desee considerar el uso del direccionador de jQuery UI en su lugar (http://tjvantoll.com/2012/07/15/native-html5-number-picker-vs-jquery-uis-spinner-which-to-use/). –
También esto podría ser útil - http://stackoverflow.com/questions/3090369/disable-validation-of-html5-form-elements. –