2014-02-19 4 views
0

Я развертываю autocomplete jQueryUI в ASP.NET MVC 4, но он не работал отлично. Когда я набрал имя Bike, он отображает ошибку, такую ​​как parsererror. Вот мой код просто:jQuery UI Autocomplete в ASP.NET MVC 4 не работает

public JsonResult GetAutoComplete(string modelname) 
    { 
     var result = db.Products; 
     var search = result.Where(p => p.Name.ToLower().Contains(modelname.ToLower())).ToList(); 
     return this.Json(result, JsonRequestBehavior.AllowGet); 
    } 

Index.cshtml:

<script type="text/javascript"> 
    //Javascript function to provide AutoComplete and Intellisense feature for finding Users. 
$(document).ready(function() { 
    $("#Name").autocomplete({ 
     source: '@Url.Action("", "StoreManager")' 
    }); 
}); 
</script> 
<p> 
    Search the Name of Bikes @Html.TextBox("Name") 
    <input type="submit" value="Submit" id="GetName" /> 
</p> 

Кто-нибудь может сказать мне, где я делаю что-то не так? Я только что обновил свой код.

+0

набор Источник: "Источник:„@ Url.Action („Действие“, „контроллер“)“удалить все Ajax методы и попробуйте еще раз – unique

+0

Это не работает @unique –

+0

Похоже, ваше действие неправильно, потому что вам нужно покажите предложения ниже текстового поля. то вам нужно предоставить все значения для действия, чтобы переименовать GetAutoComplete Action для возврата типа ActionResult и вернуть все продукты в качестве this.Json (db.Products, JsonRequestBehavior.AllowGet); это работает для меня. Если вам нужно проверить, держите точку отладки в действии GetAutoComplete и проверьте, подходит ли она к вашему действию при вводе некоторых символов текстового поля. Надеюсь, это поможет. – unique

ответ

0

попробуйте это, это может быть полезно для вас.

<script src="../../Scripts/jquery-1.8.3.js" type="text/javascript"></script> 
<script src="../../Scripts/jquery-ui.js" type="text/javascript"></script> 
<script type="text/javascript"> 
    $(function() { 
     $('#Name').autocomplete({ 
      source: '@Url.Action("GetAutoComplete")', 
      minLength: 3, 
      select: function (evt, ui) { 
      } 
     }); 
    }); 
</script> 
Смежные вопросы