jquery自动完成与不同的来源

时间:2014-10-25 20:11:02

标签: javascript jquery jquery-ui jquery-ui-autocomplete

我希望你能帮助我。我正在寻找一种可能性,使我的jquery自动完成器使用不同的源,无论第一个输入是数字还是字母(动态)。我试过几天,但无法使它发挥作用。

这就是自动完成代码:

$(function() {

$("#ac1").autocomplete(
'search.php', //or blub.php
{onItemSelect: function(item) {

var text = 'test';
$("#num1").val(item.data);

var selector = $("#num1").val();
var additionalradius = selector.substring(0,3);
var zip = selector.substring(6);
$("#num1").val(additionalradius);
$("#3rd").val(zip);
alert (additionalradius);
}},

{selectFirst: true}
);

});  

所以我需要类似"如果字段#ac1中的第一个键是一个数字,那么使用search.php。否则使用blub.php"在显示的代码中。任何的想法?谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

在搜索事件中设置source选项(在执行搜索之前触发)是一种方法。

$("#ac1").autocomplete({
    source: 'search.php',
    search: function( event, ui ) {
        if ( isNaN( parseInt( $(this).val().charAt(0) ) ) )
            $(this).autocomplete( 'option', 'source', 'blub.php' );
        else
            $(this).autocomplete( 'option', 'source', 'search.php' );
    }
});

修改

$("#ac1").autocomplete({
    source: 'search.php',
    search: function( event, ui ) { /* code from search function here */ },
    select: function( event, ui ) { /* code for item select here */ }
    /* additional options */
});