2011-07-19 175 views
0

我有自动完成问题。下面的代码是returnig我
[ “[email protected]”, “[email protected]”]自动完成问题(jquery)

$('.autocomplete').keyup(function() { 
    tid = $(this).attr('id') 
    $(this).autocomplete({ 
     source: function (req, resp){   
      $.ajax(
      { 
       url: "autocompl.asp", 
       data:$("#msgForm").serialize() + "&field="+tid , 
        success : function(resp) {  
         return resp  
        } 
      }) 
     } 

    }); 
    }); 

但建议不要出现。它在我没有任何额外参数的情况下调用自动完成时适用于我。 任何线索?

在此先感谢

玛格达

回答

0

请注意,您的参数源功能之一是RESP,你正在使用其他RESP之后。我认为你需要使用第一个响应来发送响应对象。我使用这个以及这对我有用(而不是发送一个值的数组,我发送的对象数组有两个属性,但我不认为这是强制性的)。

  1. ID
  2. 标签

所以AJAX的成功里面的代码应该是这个样子(我的数据变量是你的第二个RESP变量,不同的名称,以避免查询股价):

success: function(data) { 
    for (i in data) { 
     a = {} 
     a.id = data[i] 
     a.label = data[i] 
     options.push(a) 
    } 
    resp(options) 
}