我正在使用jquery autocomplete,在从jquery autocomplete中选择项目后,无法将焦点设置在下一个输入框上,请帮助我解决这个问题。
JavaScript
<script type="text/javascript">
$(document).ready(function () {
SearchText();
});
function SearchText() {
$(".autosuggest").autocomplete({
source: function (request, response) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Default.aspx/GetAutoCompleteData",
data: "{'username':'" + document.getElementById('txtSearch').value + "'}",
dataType: "json",
success: function (data) {
response(data.d);
},
error: function (result) {
alert("Error");
}
});
}
});
}
</script>如果下一个要聚焦的控件是
<asp:TextBox ID="txtlocation" placeholder="Location" runat="server" Style="height: 30px;"
class="span5"></asp:TextBox>发布于 2014-09-27 13:37:44
尝试设置timeOut
$(document).ready(function () {
SearchText();
setTimeout(function () {
$('#txtSearch').next('input').focus();
}, 2000);
});发布于 2014-09-27 14:27:57
更新了答案,
为此,您需要一个名为close的事件
<script type="text/javascript">
$(document).ready(function () {
SearchText();
});
function SearchText() {
$(".autosuggest").autocomplete({
source: function (request, response) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Default.aspx/GetAutoCompleteData",
data: "{'username':'" + document.getElementById('txtSearch').value + "'}",
dataType: "json",
success: function (data) {
response(data.d);
},
error: function (result) {
alert("Error");
}
});
},
close: function (event, ui) {
$('#txtlocation').focus();
}
});
}
</script>演示:http://jsfiddle.net/2ocbta1k/1/
发布于 2014-09-27 22:31:33
您应该像这样将设置焦点添加到select事件
<script type="text/javascript">
$(document).ready(function () {
SearchText();
});
function SearchText() {
$(".autosuggest").autocomplete({
source: function (request, response) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Default.aspx/GetAutoCompleteData",
data: "{'username':'" + document.getElementById('txtSearch').value + "'}",
dataType: "json",
success: function (data) {
response(data.d);
},
error: function (result) {
alert("Error");
}
});
},
close: function (event, ui) {
$('#txtlocation').focus();
},
select: function (event, ui) {
($("#txtlocation")).focus();
}
});
}
</script>https://stackoverflow.com/questions/26071367
复制相似问题