Javascript C#和MVC中的自动完成文本框
大家好,谢谢你们的帮助 我需要用C#和MVC自动完成一个包含建议的文本框 视图中的文本框为:Javascript C#和MVC中的自动完成文本框,javascript,c#,asp.net-mvc,autocomplete,Javascript,C#,Asp.net Mvc,Autocomplete,大家好,谢谢你们的帮助 我需要用C#和MVC自动完成一个包含建议的文本框 视图中的文本框为: <div class="col-lg-3 col-md-3 hidden-sm hidden-xs" style="margin-top:2%;"> <input type="text" class="formLocator" value="Milano" data-date-end-date="0d" id="textLocator" name="searchstring"&g
<div class="col-lg-3 col-md-3 hidden-sm hidden-xs" style="margin-top:2%;">
<input type="text" class="formLocator" value="Milano" data-date-end-date="0d" id="textLocator" name="searchstring">
<h4 class="FormTextLocator">Where</h4>
</div>
<div class="hidden-lg hidden-md col-sm-3 col-xs-12" style="margin-top:2%;">
<input type="text" class="formLocator" value="Milano" data-date-end-date="0d" id="textLocator" name="searchstring">
<h4 class="FormTextLocator">Where</h4>
</div>
并且关联的控制器是:
public JsonResult AutocompleteSuggestions(string searchstring)
{
var db = new TocFruit();
var suggestions = from s in db.city select s.name;
var namelist = suggestions.Where(n => n.ToString().StartsWith(searchstring.ToLower()));
return Json(namelist, JsonRequestBehavior.AllowGet);
}
但所有这些都不起作用,但我不明白我做错了什么
感谢大家,
罗伯托
检查上面的链接
同时指出,根据您的代码,您有两个具有相同id的文本框。在您的帮助下,控制器现在返回正确的值列表,但文本框不显示值。新代码是这样编写的: 现在代码是这样写的: Javascript
$(document).ready(function () {
$("#textLocator").autocomplete({
source: function (request, response) {
$.ajax({
url: "/Home/AutocompleteSuggestions",
type: "POST",
dataType: "json",
data: { term: request.term },
success: function (data) {
response($.map(data, function (item) {
return { label: item.name, value: item.name };
}))
}
})
},
messages: {
noResults: "", results: ""
}
});
});
HTML
非常感谢您遇到了什么问题/错误?您有两个相同id的文本框?我已解决了双id问题。问题是我没有在文本框下显示结果建议。我已经添加了新代码。谢谢你检查了链接吗?很好的教程链接:)
$(document).ready(function () {
$("#textLocator").autocomplete({
source: function (request, response) {
$.ajax({
url: "/Home/AutocompleteSuggestions",
type: "POST",
dataType: "json",
data: { term: request.term },
success: function (data) {
response($.map(data, function (item) {
return { label: item.name, value: item.name };
}))
}
})
},
messages: {
noResults: "", results: ""
}
});
});
<div class="col-lg-3 col-md-3 hidden-sm hidden-xs" style="margin-top:2%;">
<input type="text" class="formLocator" value="Milano" data-date-end-date="0d" id="textLocator" name="searchstring">
<h4 class="FormTextLocator">dove</h4>
</div>
public JsonResult AutocompleteSuggestions(string term)
{
var db = new TocFruit();
var suggestions = from s in db.city select s.name;
var namelist = suggestions.Where(n => n.ToString().ToLower().StartsWith(term.ToLower()));
return Json(namelist, JsonRequestBehavior.AllowGet);
}