使用jquery自动完成功能自动显示命题

时间:2012-11-23 16:36:50

标签: jquery autocomplete

我从jquery ui实现了自动完成功能,但它确实有效。 唯一的问题是我必须按向下箭头才能看到命题 我希望这能自动完成。这可能吗?

到目前为止我的代码用于自动完成

function autoCompletion() {
        var splitUrl = document.URL.split('recherche');
        $.ajax({
            type: "POST",
            url: splitUrl[0] + "recherche/autocomplete",
            data: "auto="+$("#ville").val()
                  +"&academie_id="+$("#academie_id").val(),
            success: function(retour){
                var tags = retour.split(',');
            $("#ville").autocomplete({
                source: function( request, response ) {
                var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( request.term ), "i" );
                response( $.grep( tags, function( item ){
                    return matcher.test( item );
                }) );
            },
            minLength: 1
            });
            }
        });
    }

2 个答案:

答案 0 :(得分:0)

如果您有文字输入并执行:

$("#input_id").autocomplete({source: "search.php", minLength: 2, select: function(event,  ui){
    //do something here if needed after a element is select from the list. 
});

它应该有用,您只需要search.php返回信息。

答案 1 :(得分:0)

自动完成初始化的顺序应该是相反的。自动完成组件的初始化应该只发生一次,当加载页面时,查询应该自动执行。见附件代码:

  $( "#ville" ).autocomplete({
        source: function( request, response ) {
           // Put your ajax request here
           // Put your ajax request here
           $.ajax({
               type: "POST",
               url: splitUrl[0] + "recherche/autocomplete",
               data: "auto="+$("#ville").val()
                     +"&academie_id="+$("#academie_id").val(),
               success: function(your_data){
                   // Call jquery callback
                   response( your_transformed_data );
               }
           });    
        }
  });