Estoy tratando de evitar ingresar un valor como 0 en un campo de entrada específico y mostrar un error div al ingresar 0 en la entrada, ¡así que será amable si me guía!

Me gustaría usar jquery por favor ..!

Código para el siguiente campo como:

 <input name="invoice_price"  class="form-control">
1
Salman Khan 28 ago. 2014 a las 14:27

3 respuestas

La mejor respuesta

HTML: -

<input name="invoice_price"  class="form-control">

<div id="div1" style="color:red"></div>

Jquery: -

$(document).ready(function(){
  $("input[name='invoice_price']").on('blur keyup',function(){
    if($(this).val()=='0')
    {
       $("#div1").html('0 value not allowed');
       $(this).val('');
    }
    else
    {
       $("#div1").html('');
    }
  });
});

Enlace de violín: http://jsfiddle.net/0mat1amf/1/


Como el interlocutor hizo otra pregunta en la sección de comentarios (ese usuario solo puede ingresar un máximo de tres dígitos), luego agrego más código aquí:

 <input name="invoice_price"  class="form-control" type="text" maxlength="3">
1
Kartikeya Khosla 28 ago. 2014 a las 11:25

Esto es lo que podría usar si desea acumular mensajes de error:

 $(document).ready(function(){
  $("input[name=invoice_price]").change(function(){
   if ($(this).val()==0)
    $(this).after("<div>Error message</div>");
  });
 });

Creará un mensaje de error justo después del elemento de entrada cada vez que se cambie la entrada y esté equivocada. En cambio, es posible que desee tener div predefinido y solo cambiar su contenido como:

 <input name="invoice_price"  class="form-control">
 <div></div>
 $(document).ready(function(){
  $("input[name=invoice_price]").change(function(){
   if ($(this).val()==0)
    $(this).next().html("Error message");
  });
 });
0
Kyborek 28 ago. 2014 a las 10:40

HTML:

<input name="invoice_price"  class="form-control" 
    onblur="(this.value == 0) ? (this.value = '') : ''" />

Demo

Esto asegurará que el usuario no pueda ingresar el valor cero. ¡No es necesario mostrar un error!

0
Vikram Deshmukh 28 ago. 2014 a las 10:47