Ho un modulo di numero di carta di credito. Il numero è diviso in quattro parti proprio come su una vera carta di credito.Spostamento di un focus quando il campo di testo di input raggiunge una lunghezza massima
Desidero aggiungere un gusto JavaScript al modulo in cui quando un utente digita quattro lettere in un campo, lo stato attivo passa automaticamente al tag successivo. Ma non nell'ultimo tag. In questo modo, un utente non deve digitare il tasto "tab" per spostare un focus.
Va bene aggiungere qualche classe, ID o nome extra nei tag.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>MoveFocus</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" charset="utf-8">
$(function() {
// some code goes here.
});
</script>
</head>
<body>
<form action="post.php" method="post" accept-charset="utf-8">
<input type="text" value="" id="first" size="4" maxlength="4"/> -
<input type="text" value="" id="second" size="4" maxlength="4"/> -
<input type="text" value="" id="third" size="4" maxlength="4"/> -
<input type="text" value="" id="fourth" size="4" maxlength="4"/>
<p><input type="submit" value="Send Credit Card"></p>
</form>
</body>
</html>
... naturalmente alcuni utenti ** ** sarà premere il tasto tab, e Miss campi fuori. Non dividere il campo, basta usare un singolo campo. Rende le cose molto più facili per gli utenti (ed è ciò che fa ogni altro sito web là fuori). – Quentin
Non che io sia ogni utente, ma odio i siti che lo fanno con numeri di telefono, CC e SS. Preferisco di gran lunga i siti che interpretano la prossima pressione di un tasto come andare alla casella successiva e digitarla. Nel tuo caso, aspetta la quinta pressione del tasto, se è un numero, sposta lo stato attivo sulla casella successiva e imposta il primo carattere sul numero premuto. Se si tratta di un tasto freccia destra, spostati nella casella successiva e non impostare alcun carattere. Solo la mia opinione sull'usabilità. – jball
Oh, e se l'utente commette un errore nell'immissione dell'ultimo carattere in una determinata casella, probabilmente vorrebbe che il loro tasto backspace continui a funzionare. – Quentin