Suggerisco di utilizzare il plug-in jQuery Validation. Molto flessibile ed estensibile. Per gestire il tuo intervallo, consulta quanto segue. Verrà verificato che qualsiasi input nel modulo contrassegnato con la classe "percentuale" sia presente e rientri nell'intervallo specificato.
$("#myform").validate({
rules: {
percentage: {
required: true,
range: [0, 100]
}
}
});
<input id="percent" name="percent" class="percentage" />
La ragione per cui io suggerisco di usare il plugin è che gestisce molte situazioni di validazione fuori dalla scatola, è di alleviare la responsabilità di scrivere codice di convalida per molti scenari - si può consumare il vostro sforzo creativo in modi migliori . È anche usato da molte persone e quindi ha il vantaggio di essere migliorato da una grande comunità.
Aggiornamento: Inoltre, si può prendere in considerazione un meccanismo di input alternativo, come ad esempio un slider (demo) che sarà limitare i dati in un modo che non è soggetto a errore dell'utente - o almeno non questo particolare tipo di errore.
Grazie mille. Come legherei l'evento in modo che non sia in linea? – Jourkey
-1 \t La coercizione di valori accettabili è un'interfaccia orribile. Un utente disattento potrebbe facilmente inserire dati indesiderati in questo modo. È necessario contrassegnare i dati come non validi e consentire all'utente di scegliere come regolarli. Forse, hanno appena digitato nella casella sbagliata e il valore appartiene davvero altrove, dove sarebbe valido. – tvanfosson
Vedo decisamente il tuo punto. Ma non è esattamente ciò che fa un cursore? Quando cerchi di superare i 100, ti costringe a tornare a 100/il massimo. – Jourkey