我将更改函数绑定到输入元素,当我单击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>
答案 0 :(得分:0)
$(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>
答案 1 :(得分:0)
我不明白你想要做什么。
$(document).on("change", '.usdrate, .usdcost, ', function () {
这是语法错误
$(document).on("change", '.usdrate,.usdcost', function () {
答案 2 :(得分:0)
我通过使用:
解决了 updateinputs();
setTimeout(function () {
$("#"+nextfocus).select();
}, 50);