在过去的 7 个小时里,我一直在努力让它工作,所以请原谅我有点沮丧。
我已经成功实现了一组很好的 jquery ui 选项卡,它们通过 ajax 加载它们的内容。
通过 ajax 加载的内容具有一个表单。我希望在加载选项卡时自动聚焦表单中的第一个字段(其 ID 为#title)。当我尝试将脚本放入外部文档时,这不起作用,所以我认为回调是个好主意。
setTimeout( function() { $("#title").focus(); }, 500 );
我从这里得到了这个想法。延迟是因为我在单击每个选项卡时遇到了字段无法正确聚焦的问题。起初我认为这已经解决了一些问题,但是经过更多测试后,我发现这个焦点字段仅适用于最初加载的选项卡。
我决定清醒一下,实现一个漂亮的 jquery 自动完成文本字段。
该脚本在直接加载到外部内容时似乎可以工作,但令我沮丧的是,进一步的测试表明情况并非如此。自动完成字段仅适用于加载页面时加载的选项卡。
这是当我注意到我的两个脚本只在初始加载的选项卡上工作的模式时。
我曾尝试使用选择、加载和显示事件,但都无法正常工作。
我知道回调正在工作,因为单击每个选项卡时都会出现警报。
显然我做错了什么。
请挑选我的代码并告诉我我做错了什么。
<script type="text/javascript">
$(function() {
$("#tabs").tabs({
load: function(event, ui) { setTimeout( function() { $("#title").focus(); }, 500 );
$("#role").autocomplete(
"/profile/autocomplete",
{
delay:10,
minChars:1,
matchSubset:1,
matchContains:1,
cacheLength:10,
onItemSelect:selectItem,
onFindValue:findValue,
formatItem:formatItem,
autoFill:true
}
);
alert('callback');
}
});
});
</script>