更改自动填充中的所选项目

时间:2014-04-25 12:10:39

标签: jquery autocomplete jquery-autocomplete

我有一个配置了jQuery自动完成的输入字段。 autocomplete工作正常,值显示正常。想象一下当我进入"你好"在输入字段中,自动完成显示一个列表:" hello john"," hello mary"," hello xyz"。当我选择其中一个显示的选项时,"你好john"例如,通常"你好john"将显示在输入字段中。但我想修改那个字符串,以便只有" john"被展示。当我尝试在select事件中执行此操作时,使用$(this).val("john");设置输入时,它无法正常工作。

编辑:

根据我的经验,输入值会在一小段时间内发生变化($(this).val(hotel);通话和select部分结束之间的时间)。然后它被自动完成提出的原始值覆盖。

2 个答案:

答案 0 :(得分:1)

$( ".selector" ).autocomplete({
  select: function( event, ui ) {

  //// do here
  ////write /////
   return false;//// in last line
}
});

根据doumentation http://api.jqueryui.com/autocomplete/#event-select

答案 1 :(得分:1)

<强>小提琴:

<强> http://jsfiddle.net/8ptJv/1/

<强> HTML:

<input type="text" id="tags"/>

<强> jquery的:

$(function() {
    var availableTags = [
      "Hello John",
      "Hello tommy",
      "Hello Mary",
    ];
    $("#tags").autocomplete({
      source: availableTags,
        select: function(event, ui) {
            $(this).val(ui.item.value.replace("Hello ",""));
            return false;
        }
    });
  });