【问题标题】:Autocomplete using key press as well as enter key trigger使用按键和输入键触发自动完成
【发布时间】:2014-11-17 15:45:54
【问题描述】:

我必须通过按键和按回车键后进行自动完成搜索。按键后它工作正常,但按回车键后它不工作。对于我使用的按键

$('document').ready(function(){
   $('.input-search-text').on('focus', function(){
       var $this = $(this),
         searchType = $("#network").find('.dd-selected-value').val().toLowerCase(),
         searchURL = $(".form-search-users").attr('action');

   $this.autocomplete({
       //Remaining stuff.
   })
})

哪个工作正常。但是对于我使用的输入键

$('document').ready(function(){
    $('.input-search-text').keypress(function(){
       var $this = $(this);
       if(e.which == 13) {
            getSearch($this);
       }
   });
});

function getSearch(object) {
    var $this = object,
        searchType = $("#network").find('.dd-selected-value').val().toLowerCase(),
        searchURL = $(".form-search-users").attr('action');

    $this.autocomplete({
        // Remaining stuff ...
    }); 
}

我的代码在 $this.autocomplete({ }) 之前运行良好。但由于某种原因,$this 不起作用,如果我使用像这样的直接 id

$('#input).autocomplete({
        // Remaining stuff ...
});

然后它工作正常。请告诉我我需要从哪里进行更改才能使其正常工作。提前致谢。

【问题讨论】:

    标签: jquery


    【解决方案1】:

    您应该在 getSearch 函数中使用自动完成小部件的方法 search

    function getSearch(object) {
        var $this = object,
            searchType = $("#network").find('.dd-selected-value').val().toLowerCase(),
            searchURL = $(".form-search-users").attr('action');
    
        $this.autocomplete({
            // Remaining stuff ...
        })
        .autocomplete('search', $this.val()); 
    }
    

    参考:http://api.jqueryui.com/autocomplete/#method-search

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-14
      • 2012-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-21
      • 2015-03-01
      • 2011-04-19
      相关资源
      最近更新 更多