0
這是我在.cshtml快速搜索決不會被調用
@using (Ajax.BeginForm("Search","Home",
new AjaxOptions
{
UpdateTargetId = "SearchResults",
HttpMethod ="GET",
InsertionMode = InsertionMode.Replace
}
))
{
<input type="text" id="q" data-autocomplete="@Url.Action("QuickSearch", "Home")" />
<input type="submit" value="Search" />
}
<table id="SearchResults">
</table>
和.js文件代碼:
$(document).ready(function() {
$(":input[data-autocomplete]").each(function() {
$(this).autocomplete({ source: $(this).attr("data-autocomplete") });
});
});
和HomeController.cs我的快速搜索是:
public ActionResult QuickSearch(string term)
{
var _restaurant = context.Books.Where(r => r.BookTitle.Contains(term))
.Take(10)
.Select(r => new
{
label = r.BookTitle
});
return Json(_restaurant, JsonRequestBehavior.AllowGet);
}
並添加了jquery-1.5.1.min.js
,jquery-ui.css
,jquery-ui.js
,jquery.unobtrusive-ajax.min.js
,modernizr-1.7.min.js
我的搜索按鈕工作得很好,但我的自動完成功能完全不工作,甚至在我將斷點放在QuickSearch方法上時調用該方法,並調試它從不調用並執行該方法。 但 此
<a href="@Url.Action("QuickSearch", "Home")">url</a>
它工作得很好。
也在我的其他項目中一切正常,沒有問題。
我真的很感激任何幫助。
在您在自動填充框中輸入值後,您應該看看瀏覽器控制檯,看看您是否有任何錯誤。 – archil