1

私はjqueryが初めてです。ユーザーが正しい形式/パターン (正規表現値) を入力した後、次のフィールドに自動的に移動しようとしています。

これが私がこれまでに持っているものです:

形:

<form>
<label for="serial_number">Serial Number: </label>
<input type="text" id="serial_number" name="serial_number" placeholder="Serial Number" pattern="[0-9]{5}" maxlength="5" required autofocus />

<input type="text" id="second_entry" name="second_entry" placeholder="second_entry" pattern="[0-9]{5}" maxlength="5" required />

<input type="submit" value="Process" />
</form>

Jクエリ:

$('.serial_number').keyup(function() {
var inputVal = $(this).val();
var characterReg = /^[0-9]\d{20}$/;
if(characterReg.test(inputVal)) {

$("serial_number").change(function() {
var inputs = $(this).closest('form').find(':input');
inputs.eq( inputs.index(this)+ 1 ).focus();
});

}
});

どんな援助でも大歓迎です!

4

2 に答える 2

0

はい、どうぞ。コードを見てください...

http://jsfiddle.net/aVdex/

jQuery(document).ready(function() {
    $('#serial_number').keyup(function() {
        var inputVal = $(this).val();
        var characterReg = /^\d{5}$/;
        if(characterReg.test(inputVal)) {
            $("#serial_number").next("input").focus();
        }
    });
});

ID の場合は、#セレクターを使用する必要があります。クラスの場合は、 を使用します.change入力がフォーカスを失うまでイベントは発生しないため、すべてのチェックをイベントで行う必要がありますkeyup。この関数を使用してnext、要素の直接の兄弟を取得できます。 Focusユーザーのフォーカスをその要素に設定し、カーソルを次の入力に置きます

于 2013-07-11T19:06:26.553 に答える