JavaScriptSviluppo

Limitare il valore di input number in JavaScript

Se hai mai avuto la necessità di limitare il numero di caratteri di un campo di input di tipo number, probabilmente hai già scritto del codice JavaScript per farlo. Ma cosa succede se vuoi anche rimuovere i segni di somma e di sottrazione dal valore dell’input? Fortunatamente, ci sono alcune tecniche semplici che puoi usare per ottenere entrambe le cose in un’unica funzione.

Una soluzione possibile è utilizzare il metodo replace() per rimuovere i segni di somma e di sottrazione dall’input. Inoltre, puoi combinare questa operazione con la limitazione del numero di caratteri dell’input, in modo da ottenere una funzione completa e versatile. Ecco come potrebbe apparire il codice della funzione:

function limita(elementoInput, lunghezzaMassima, valoreMassimo) {
    let valoreInput = elementoInput.value.replace(/[-+]/g, '');
    if (valoreInput.length > lunghezzaMassima) {
        valoreInput = valoreInput.slice(0, lunghezzaMassima);
    }
    if (parseInt(valoreInput) > valoreMassimo) {
        valoreInput = valoreMassimo.toString();
    }
    elementoInput.value = valoreInput;
}
<input type="number" min="0" max="99" oniunput="limita(this, 2, 99)">

Questa funzione rimuove i segni di somma e di sottrazione dall’input utilizzando una espressione regolare, e poi limita il numero di caratteri dell’input e il suo valore massimo. In questo modo, puoi controllare facilmente il contenuto dell’input e assicurarti che sia sempre corretto.

/ 5
Grazie per aver votato!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *