0

我对文本框进行了自动完成,如下所示,

<input type='text' style='width:100px;' id='tags'>

这是在页面加载时自动完成加载的功能。

window.onload=function Search_Items() {
    var action = "Search";
    $.ajax({
        method:'GET',
        url:'Ajax.php',
        data: {action:action},
        success:function(result) {
            document.getElementById("Search_Result_Div").innerHTML=result;
            var temp=document.getElementById("Search_Result").value;
            availableProducts=temp.split("`");

            $(function() {
                var Product=$( "#tags" ).autocomplete({
                    source: availableProducts,
                    select: function () {Data_Modification($(this).val());}
                });

                Product.autocomplete('option','onclick').call(Product);
            });                 
        }
    });
};

这里我只是调用了一个函数并传递了一个值(值是在自动完成中选择的)。但在这里它不是传递我选择的值,而是传递我为搜索输入的值。

我推断的是,它正在调用函数,然后用选择的值填充文本框。但我需要用选择的值填充文本框,然后调用该函数。我该如何解决?请如果有人以前遇到过这个问题。请帮帮我。

4

2 回答 2

2

尝试这个

 $(function() {
    var Product=$( "#tags" ).autocomplete({
        source: availableProducts,
        select: function (event, ui) {Data_Modification(ui.item.value);}
    });
    Product.autocomplete('option','onclick').call(Product);
 });  
于 2013-10-17T06:27:00.450 回答
0

我自己找到了解决方案。我重写了这个

select: function () {Data_Modification($(this).val());} 

select: function (event,ui) {Data_Modification(ui.item.value);}

它工作正常。

于 2013-10-17T06:28:04.633 回答