我将change函数绑定到一个输入元素,当我单击TAB键进入下一个输入时(有一个函数可以动态更新内容),然后我就失去了下一个输出的焦点。
我尝试了很多方法,但都没能把注意力集中在下一个输入上。
$(document).on("change", '.usdrate, .usdcost, ', function () {
updateinputs();
if($(this).attr('class') == 'usdrate'){
//not working
$('.usdcost').focus();
}
});
function updateinputs(){
//I create new inputs because I changed the values
//there are many operations here
$("#test").html('').html('<input class="usdrate"><input class="usdcost">');
}
html code:
<div id="test"><input class="usdrate"><input class="usdcost"></div>
我不明白你到底想做什么。
$(document).on("change", '.usdrate, .usdcost, ', function () {
这是一个语法错误
$(document).on("change", '.usdrate,.usdcost', function () {
Fiddle:https://jsfiddle.net/soonsuweb/zrjo0ou8/
$(function () {
updateinputs();
if($('#test').find('input').hasClass('usdrate')){
$('#test').find('input').focus();
}
});
function updateinputs(){
$("#test").html('<input class="usdrate"><input class="usdcost">');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div id="test"><input class="usdrate"><input class="usdcost"></div>
我使用求解
updateinputs();
setTimeout(function () {
$("#"+nextfocus).select();
}, 50);