可以't让jQuery autoComplete进行筛选
Can't get jQuery autoComplete to filter
嗨,我正在尝试让jQuery的autoComplete ui正常工作。
目前,我有一个asp.net文本框,我正在调用一个Web服务,并将该列表的结果链接到文本框。我调用的Web服务从SQL数据库获取未经筛选的结果列表。
public List<string> getAutoCompleteList() {
DataSet dsAutoList = getAutoList();
DataTable dtAutoList = dsAutoList.Tables[0];
List<string> lstTitles = new List<string>();
foreach (DataRow drAutoList in dtAutoList.Rows)
{
//zAutolist = zAutolist + drAutoList["course_title"].ToString();
lstTitles.Add(drAutoList["course_title"].ToString());
}
return lstTitles;
}
将该列表分配给文本框的javascript是(加载时)
function autoComplete() {
$(".txtSearch").autocomplete({
source: function(request, response) {
$.ajax({
url: "/webservice/wsJQueryAutoComplete.asmx/getAutoCompleteList",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
//dataFilter: function(data) { return data; },
success: function(data) {
response($.map(data.d, function(item) {
return { value: item }
}))
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
}
});
},
minLength: 3 // MINIMUM 3 CHARACTER TO START WITH.
});
}
一切都很好,如果我开始在文本框中键入,结果就会出现,但问题是,结果列表并没有根据我在搜索框中键入的内容进行过滤,它只是显示列表中的每个项目,无论我键入什么,都不会进行过滤。
有人能抽出几分钟时间让我知道我做错了什么吗?
谢谢,Craig
由于您不想根据输入动态填充搜索项,因此必须在初始化自动完成之前将搜索项填充到数组中,即将$.ajax调用移动到自动完成调用之外:
$.ajax({
url: "/webservice/wsJQueryAutoComplete.asmx/getAutoCompleteList",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
// Changed here:
success: function(data) {
$(".txtSearch").autocomplete({
source: data.d
});
}
});
因此,在初始化jquery自动完成时,您将传递一个预先填充的数组作为源参数,这将导致过滤器对静态列表进行操作。
$(".txtSearch").autocomplete({
source: prepopulatedList
});
相关文章:
- 使用AngularJS中的筛选器更新给定的表
- 淘汰搜索/筛选
- AngularJS单选筛选不适用于Name、Description和Field4复选框值
- Angular JS Filter-通过3个复选框进行筛选
- 使用下拉列表筛选列表(ul>li)
- autocomplete不接受源的json对象
- JQuery DataTable列筛选器-选择下拉筛选器
- Regex,用于从字符串中筛选关键字
- 使用多个条件筛选ng个重复
- 在筛选网格期间,网格负载掩码不起作用
- 接下来选择与筛选器匹配的选项
- 可以't从AJAX请求中筛选数据
- 如何从另一个带下划线的数组中筛选带元素的数组
- 动态更改Webkit筛选器值
- 如何筛选对象的数组属性
- .autocomplete不是函数MVC4
- 如何使用URL筛选wordpress自定义帖子类型
- 筛选下划线中的对象
- 根据多个值筛选数组
- 可以't让jQuery autoComplete进行筛选