Jquery UI自动完成如何向服务器端发送多个值?

时间:2011-04-11 19:55:12

标签: jquery asp.net-mvc jquery-ui asp.net-mvc-3 autocomplete

我正在使用Jquery ui自动完成功能,我想知道如何发回多个值。

我试过

$('#id').autocomplete
            ({
                source: 'MyURL',
                minLength: 2,
                extraParams: { Id: 1 }
            });

这似乎不起作用。 Option for auto complete

修改

我现在有了这个

$('#id').autocomplete({      
                source: function (request, response)
                {
                    $.ajax({
                        url: 'url',
                        data: {
                            term: request.term,
                            Id: 1
                        },
                        success: function (data)
                        {
                            response(data);
                        }

                    });
                },
                minLength: 2
            });

我的控制器

 return Json("Test",JsonRequestBehavior.AllowGet);

我也试过

 return Content("Test");

然而现在我得到'T','E','S','T'而不是“Test”它出于某种原因将它分开。

2 个答案:

答案 0 :(得分:1)

你很亲密;自动完成小部件需要一个数组候选者:

  

应根据此数据过滤此数据   提供的术语,可以是任何一个   上面描述的格式   简单的本地数据(String- 数组或   具有标签/值/两者的对象 - 数组   属性)

return Json(new[] {"Test"}, JsonRequestBehavior.AllowGet)

答案 1 :(得分:0)

您可以使用自动填充选项接受多个值: http://jqueryui.com/demos/autocomplete/#multiple
从那里你可以发送整个值并将其拆分为分隔符(可能是逗号)并将每个值发送到一个数组中并从那里处理值。