Jquery 自动完成在ASP.NET MVC部分视图中不起作用
我对文本框有一个局部视图Jquery 自动完成在ASP.NET MVC部分视图中不起作用,jquery,asp.net-mvc,autocomplete,partial-views,Jquery,Asp.net Mvc,Autocomplete,Partial Views,我对文本框有一个局部视图 <input type="text" name="models" id="models" /> 但是,当我在输入中输入一些文本时,什么也没有发生,也没有出现错误。我怀疑原因是加载DOM时#模型还不存在。我在考虑使用全局ajaxSuccess函数,但我不确定这样做是否正确。当我在输入中输入文本并进行递归时,它也会被调用吗?这里的最佳实践是什么 我试着像这样使用ajaxSuccess: $(document).ajaxSuccess(function() {
<input type="text" name="models" id="models" />
但是,当我在输入中输入一些文本时,什么也没有发生,也没有出现错误。我怀疑原因是加载DOM时#模型还不存在。我在考虑使用全局ajaxSuccess函数,但我不确定这样做是否正确。当我在输入中输入文本并进行递归时,它也会被调用吗?这里的最佳实践是什么
我试着像这样使用ajaxSuccess:
$(document).ajaxSuccess(function() {
$("#models").autocomplete({
source: function (request, response) {
$.ajax({
url: "/MyController/MyAction",
type: "POST",
dataType: "json",
data: { searchText: request.term },
success: function (data) {
response($.map(data, function (item) {
return { label: item.Text, value: item.Text };
}));
}
});
},
});
});
但是我犯了错误
未捕获类型错误:$(…)。自动完成不是函数
我确信jQuery在页面上和脚本之前只加载一次。Intellisense根本看不到自动完成功能。对不起,我真的很愚蠢,没有意识到自动完成不是jquery主包的一部分,但它在jquery UI one中。可能是
$(document).ajaxSuccess(function() {
$("#models").autocomplete({
source: function (request, response) {
$.ajax({
url: "/MyController/MyAction",
type: "POST",
dataType: "json",
data: { searchText: request.term },
success: function (data) {
response($.map(data, function (item) {
return { label: item.Text, value: item.Text };
}));
}
});
},
});
});