jQuery UI自动完成筛选数据

jQuery UI自动完成筛选数据,jquery,jquery-ui-autocomplete,Jquery,Jquery Ui Autocomplete,我是jquery新手,我被指派在项目被选中后过滤掉列表。有3个文本框使用自动完成 资料来源:苹果、橙子、芒果 文本框1=苹果 textbox 2=应在列表中过滤掉苹果。它应该只显示橙色和芒果 我能够过滤源,但列表仍然显示该项。但是一旦我刷新页面,源代码就会更新。我发现了这个问题,但在我的例子中,我没有添加,而是想过滤掉它 感谢您的帮助 谢谢! Zel在每个textbox changed事件中,您必须从列表中删除该项并调用函数(从插件)。您一定是同时调用了这三个函数 我会做什么。。。将第一个文本框

我是jquery新手,我被指派在项目被选中后过滤掉列表。有3个文本框使用自动完成

资料来源:苹果、橙子、芒果

文本框1=苹果 textbox 2=应在列表中过滤掉苹果。它应该只显示橙色和芒果

我能够过滤源,但列表仍然显示该项。但是一旦我刷新页面,源代码就会更新。我发现了这个问题,但在我的例子中,我没有添加,而是想过滤掉它

感谢您的帮助

谢谢!
Zel

在每个textbox changed事件中,您必须从列表中删除该项并调用函数(从插件)。您一定是同时调用了这三个函数

我会做什么。。。将第一个文本框的值传递回服务器(对于每个自动完成,反之亦然)

你可以试试这样的

JQuery

$('#auto2_id').autocomplete({
            source: function (request, response) {
                $.ajax({
                    url: 'some_url/SomeAction',
                    dataType: "json",
                    data: {
                        term: request.term,
                        filter: $('#auto1_id').val()
                    },
                    success: function (data) {
                        //do something
                    }
                })
            }
        });
服务器端 (不确定您使用的是哪种语言。 但在c#(粗略代码示例)中


可能值得发布您迄今为止所做的工作?
public ActionResult SomeAction(string term, string filter)
{
  var data = _repo.GetAllCached().Where(o => o.Text != filter && o.Text.Contains(term));
  return Json(data , JsonRequestBehavior.AllowGet);
}