猿问

如何在JQuery UI自动完成中使用source:function()...和AJAX

如何在JQuery UI自动完成中使用source:function()...和AJAX

我需要一些JQuery UI Autocomplete的帮助。我希望我的textfield(.suggest-user)显示来自AJAX请求的名称。这就是我所拥有的:

jQuery("input.suggest-user").autocomplete({
    source : function(request, response) {
        var name = jQuery("input.suggest-user").val();
        jQuery.get("usernames.action?query=" + name, function(data) {
            console.log(data);  // Ok, I get the data. Data looks like that:
            test = data;        // ["one@abc.de", "onf@abc.de","ong@abc.de"]
            return test;        // But what now? How do I display my data?
        });
    },
    minLength : 3});

很感谢任何形式的帮助。


繁花如伊
浏览 920回答 3
3回答

波斯汪

试试这个代码。你可以用$.get而不是$.ajax$( "input.suggest-user" ).autocomplete({     source: function( request, response ) {         $.ajax({             dataType: "json",             type : 'Get',             url: 'yourURL',             success: function(data) {                 $('input.suggest-user').removeClass('ui-autocomplete-loading');                   // hide loading image                 response( $.map( data, function(item) {                     // your operation on data                 }));             },             error: function(data) {                 $('input.suggest-user').removeClass('ui-autocomplete-loading');               }         });     },     minLength: 3,     open: function() {},     close: function() {},     focus: function(event,ui) {},     select: function(event, ui) {}});
随时随地看视频慕课网APP
我要回答