jQuery UI自动完成 - 如何获取用户输入的值

时间:2010-07-29 23:12:23

标签: jquery user-interface autocomplete

免责声明:我已经完成了相关问题,无法找到解决此特定问题的方法。

情景是这样的:

根据用户是从下拉列表中选择了建议还是没有匹配项,我想执行不同的jQuery ajax操作。我该怎么做呢?我被困的地方是如何捕获当前在自动完成输入文本框中的输入?

由于

2 个答案:

答案 0 :(得分:2)

说实话我不确定。查看文档, search 事件应该有效。

编辑阅读文档确实很有帮助。 :d

搜索方法。

  

触发搜索事件,当时   数据可用,然后将显示   建议;可以用来使用   像selectbox一样的按钮来打开   点击时的建议。如果没有价值   参数是指定的,当前的   使用输入的值。可以叫   用空字符串和minLength:0   显示所有项目。

$( ".selector" ).autocomplete({
   search: function(event, ui) {
     $.ajax{
       //Your ajax parameters...

       success: function(data) { //No idea what format your data is in...
         if(data['status'] == false) { //there is no result
           //return your data.
           //Trigger the events you want if the item does no exist.
         }
         else if(data['status'] == true){
            //return data normally.
         }
       }

     }
   }
});

答案 1 :(得分:2)

要捕获当前位于自动填充输入文本框中的输入,您可以使用autocomplete remote example中的select方法:

    $("#birds").autocomplete({
        source: "search.php",
        minLength: 2,
        select: function(event, ui) {
            log(ui.item ? ("Selected: " + ui.item.value + " aka " + ui.item.id) : "Nothing selected, input was " + this.value);
        }
    });

如果ui.item有值,则表示某些内容匹配(并且匹配的值在那里)。

如果您想要用户输入的内容,请使用this.value