我有一个包含在我们的数据库中的2500个职业的列表。在我们的网站上,我们要求您输入您的职业,我希望在他们输入时过滤结果;喜欢Play.com的搜索。有没有办法在MVC3中执行此操作?
感谢任何帮助。
答案 0 :(得分:3)
您可以使用自动填充javascript执行此操作。
例如: http://www.pnpguidance.net/post/jQueryAutoCompleteASPNETMVCFramework.aspx
您可以使用jQuery Ajax获取数据。
答案 1 :(得分:0)
我会创建一个返回JSON的动作方法:
[HttpGet()]
public JsonResult Occupations(String searchCriteria)
{
String[] occupations = new String[] { "Lawyer", "Carpenter" };
return Json(occupations.Where(s => s.Contains(searchCriteria))
.ToList(), JsonRequestBehavior.AllowGet);
}
如果您在此链接上运行GET请求:/ Occupations?searchCriteria = Carpenter您将在回复中收到[“Carpenter”]。
我会对这个动作方法进行jQuery ajax调用。成功之后,我会接受一个响应并生成一个输出,例如li元素列表可供选择。
ajax json get请求的示例如下:
$.ajax({
type: 'json',
url: '/Occupations',
type: 'GET',
cache: false,
data: { searchCriteria: searchCriteria},
error: function () {
},
success: function (result) {
alert(result);
}
});
这是来自记事本,因此可能会出现一些轻微的语法错误。