我有几个输入html元素。在输入im的变化事件(tab-out)中,制作一个ajax文章并取回html。然后我用这个新的html替换现有的html。这样做会减少对下一个输入元素的关注。 然而,在我做ajax post im存储当前焦点元素的id之前,我可以在html被替换后重新调整相同的输入。但它不工作如何在重新加载html后重新关注输入元素
下面是我的代码
<div id="mycontainer">
<input id="input1" />
<input id="input2" />
<input id="input3" />
</div>
$(function() {
$("input").change(function() {
$.ajax(
{
data: "somedata",
url: "someurl",
method: "POST"
})
.done(function (response) {
var currentElement = $(':focus').attr("id");
$("#mycontainer").html(response)
$("#" + currentElement).focus();
})
})
})
更改事件在模糊事件后触发,焦点移动。你调试过并检查currentElement是什么吗?顺便说一句,取代所有的HTML是一个坏主意,你失去处理程序,重点,滚动位置... –