Я использую следующий код jQyery для автоматической фокусировки на следующем поле ввода, когда предыдущее поле достигло значения maxLength
.Однако он не будет фокусироваться на следующем поле ввода.
$(".input_focus input").keyup(function () {
if (this.value.length == this.maxLength) {
$(this).next('.input_focus input').focus();
}
});
Я предполагаю, что это может иметь какое-то отношение к селектору .next
, который должен быть нацелен на следующего брата.Но, насколько я знаю, следующий .input_focus input
- это родной брат предыдущего.
Это разметка для части формы, которую я использую:
<li id='field_8_8' class='input_focus'>
<label class='gfield_label' for='input_8_8' >My label<span class='gfield_required'>*</span></label>
<div class='ginput_container ginput_container_text'>
<input name='input_8' id='input_8_8' type='text' value='' class='small' maxlength='4' tabindex='5' placeholder='1234' aria-required="true" aria-invalid="false" />
</div>
</li>
<li id='field_8_10' class='input_focus'>
<label class='gfield_label' for='input_8_10' >My other label<span class='gfield_required'>*</span></label>
<div class='ginput_container ginput_container_text'>
<input name='input_10' id='input_8_10' type='text' value='' class='small' maxlength='2' tabindex='6' placeholder='AB' aria-required="true" aria-invalid="false" />
</div>
Я ни в коем случае не эксперт по jQuery, поэтому я, вероятно, что-то упускаю.Любая помощь очень ценится.