Come ignorare il carattere della prima iscrizione pari a zero in una casella di testo con jQuery

StackOverflow https://stackoverflow.com/questions/2416875

Domanda

In sostanza, non voglio all'utente di immettere '0' (zero) come primo carattere in una casella di testo che rappresenta i dati con il tipo di integer?

Vorrei associare un gestore di eventi per gestire questa situazione con jQuery.

Ogni esperienza?

Grazie,

È stato utile?

Soluzione

Si potrebbe semplicemente sostituirlo sulla keyup in questo modo:

$('#test').keyup(function() {
   if ($(this).val() === '0')
   {
      $(this).val('');
   }    
});

Altri suggerimenti

È possibile sostituire il valore con il valore intero se si desidera:

$(".IntegerInput").val(function(i, v) {
  return parseInt(v, 10);
});

In questo modo analizzare l'int e sostituire il valore con esso, eliminando ogni 0 iniziale di.

Romuald fatto un dio cattura, per il vostro caso specifico è necessario l'argomento radix su parseInt()

si può usare qualcosa di simile $('textbox').val().substr(0,1) != 0; Anche se sarebbe meglio se sapevamo ciò che si vorrebbe realizzare

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top