2016-01-21 73 views
3

喜一切,感谢您的帮助,错误建议自动完成文本框MVC和Javascript

我有在MVC自动完成建议文本。

视图中的文本框是:

<form action="Locator"> 
     <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> 
    </form> 

我已经创建一个JavaScript代码此文字框:

$(document).ready(function() { 
    $('[data-toggle="tooltip"]').tooltip(); 
    // Locator 
    $("#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 { value: item.name }; 
        })) 
       } 
      }) 
     }, 
     messages: { 
      noResults: "", results: "" 
     } 
    }); 
}); 

和相关联的控制器是:

[HttpPost] 
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); 
} 

自动完成值传递给查看,但这是结果视图:

enter image description here

请帮助我,我真的不知道该怎么做。

感谢所有,

罗伯托

+0

试试只是'return {value:item};' –

+0

我想你在填充自动填充时忘记提及标签。 label:item.Description –

+0

我必须写回来{value:item}; ? – user5297740

回答

1

我想你忘记提及标签,自动完成

$(document).ready(function() { 
$('[data-toggle="tooltip"]').tooltip(); 
// Locator 
$("#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 { 
          value: item.name, 
          label : item.name 
          }; 
       })) 
      } 
     }) 
    }, 
    messages: { 
     noResults: "", results: "" 
    } 
}); 

});

+0

它不起作用。如果我设置的标签不改变任何东西 – user5297740