专注于所选 class 的下一个输入,即使在 jQuery 的另一个 class 输入上也是如此
Focus on next input of selected class even if on another class input with jQuery
我在 jQuery 中找不到正确的代码来执行此操作。
我可以使用此代码专注于“.first”class 的下一个输入。但是,如果我不在“.first”输入上,它将转到第一个“.first”输入。
这是代码片段:
var $first_elements = $('.section .first');
var $inputs = $('input');
$inputs.on('keyup', function(e) {
if (e.which === 13) {
var ind = $first_elements.index(this);
$first_elements.eq(ind + 1).focus()
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div class="section">
<input class="first" name="input_1" /><input name="input_2" /><input name="input_3" />
<br/>
<input class="first" name="input_4" /><input name="input_5" /><input name="input_6" />
<br/>
<input class="first" name="input_7" /><input name="input_8" /><input name="input_9" />
</div>
如何使用 .first
选择器从任何输入转到下一个输入?
像这样更新你的代码,只为具有 class first
的输入元素绑定 keyup 事件
var $inputs = $('input');
$inputs.on('keyup', function(e) {
if (e.which === 13) {
$inputs.next('input.first').focus()
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input class="first" name="input_1" />
<input name="input_2" />
<input name="input_3" />
<input class="first" name="input_4" />
<input name="input_5" />
<input name="input_6" />
我在 jQuery 中找不到正确的代码来执行此操作。 我可以使用此代码专注于“.first”class 的下一个输入。但是,如果我不在“.first”输入上,它将转到第一个“.first”输入。
这是代码片段:
var $first_elements = $('.section .first');
var $inputs = $('input');
$inputs.on('keyup', function(e) {
if (e.which === 13) {
var ind = $first_elements.index(this);
$first_elements.eq(ind + 1).focus()
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div class="section">
<input class="first" name="input_1" /><input name="input_2" /><input name="input_3" />
<br/>
<input class="first" name="input_4" /><input name="input_5" /><input name="input_6" />
<br/>
<input class="first" name="input_7" /><input name="input_8" /><input name="input_9" />
</div>
如何使用 .first
选择器从任何输入转到下一个输入?
像这样更新你的代码,只为具有 class first
var $inputs = $('input');
$inputs.on('keyup', function(e) {
if (e.which === 13) {
$inputs.next('input.first').focus()
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input class="first" name="input_1" />
<input name="input_2" />
<input name="input_3" />
<input class="first" name="input_4" />
<input name="input_5" />
<input name="input_6" />