如何在自动完成实现的文本框中设置默认值?

Sak*_*vel 7 html jquery jquery-autocomplete

我有一个使用自动完成功能实现的文本框.就这个.

<input id="txtcity" />
$("#txtcity").autocomplete({
  source: function (request, response) {
    $.ajax({
      url: '@Url.Action("CityLookup", "PatientDemographic", "")', type: "POST", dataType: "json",
      data: { searchText: request.term, maxResults: 10 },
      success: function (data) {
        response($.map(data, function (item) {
          return { label: item.Text, value: item.Text, id: item.Value }
        }))
      }
    })
  },
  select: function (event, ui) {
    $("#CityCode").val(ui.item.id);
  },
  open: function () {
    $(this).removeClass("ui-corner-all").addClass("ui-corner-top");
  },
  close: function () {
    $(this).removeClass("ui-corner-top").addClass("ui-corner-all");
  }
});
Run Code Online (Sandbox Code Playgroud)

这会返回三个结果,比如说"Apple","Banana","Cabbage".如何在渲染时将默认值设置为"Banana"?即,text ="banana"value ="2"?

Edw*_*ard 16

初始化自动完成后,您可以像这样设置值:

$( "#txtcity" ).autocomplete({
  // do whatever
}).val('Banana').data('autocomplete')._trigger('select');
Run Code Online (Sandbox Code Playgroud)

更新示例:http: //jsfiddle.net/55jhx/1/