2013-03-22 23 views
2

我有三個URL從不同的bean中返回不同的JSON響應(稱爲用戶手機,地址和電子郵件)。具有多個url feed的Ajax

url='/mobile.do?username=x&password=y' 
url='/email.do?username=x&password=y' 
url='/address.do?username=x&password=y' 

對於下面的自動完成插件(fcbkcomplete):

<script type="text/javascript"> 
    $(document).ready(function(){     
     $("#mySelect").fcbkcomplete({ 
      json_url: "?!!", 

     }); 
    }); 
</script> 

現在我想用這些URL來填充和數據添加到單個字段,而不是三個不同的領域。因此,我需要混合這些URL或類似的東西。

我想知道這是什麼最好的方法?我們可以設置多個網址或其他內容嗎?

+0

你是什麼意思的混合?他們是否可以簡單地加在一起?還是數據必須以某種方式加入? – Fresheyeball 2013-03-22 01:18:30

+0

獲取三種不同的響應會花費太多時間...難道你不能只從一個響應中返回所有三個信息(它需要重新考慮後端代碼) – Goran 2013-03-22 01:20:27

+0

是的我需要從這些URL加載數據,比如我的結果中有移動設備,電子郵件和地址。 – ComeRun 2013-03-22 01:25:12

回答

2

您可以通過更改函數load_feed來修改該插件。這沒有經過測試,所以可能需要一些tweeking。

function load_feed(etext) { 
    counter = 0; 
    if (options.json_url_list && maxItems()) { 
     if (options.cache && json_cache_object.get(etext)) { 
      addMembers(etext); 
      bindEvents(); 
     } else { 
      getBoxTimeout++; 
      var getBoxTimeoutValue = getBoxTimeout; 
      setTimeout(function() { 

       if (getBoxTimeoutValue != getBoxTimeout) return; 

       var count = 0; 
       var all_data = []; 

       var finished = function() { 
        if (!isactive) return; // prevents opening the selection again after the focus is already off 
        json_cache_object.set(etext, 1); 
        bindEvents(); 
       }; 

       for (var i = 0; i < options.json_url_list.length; i++) { 
        $.getJSON(options.json_url_list[i], { 
         "tag": xssDisplay(etext) 
        }, function (data) { 
         addMembers(etext, data); 
         count += 1; 
         if (count === options.json_url_list.length) finished(); 
        }); 
       } 
      }, options.delay); 
     } 
    } else { 
     addMembers(etext); 
     bindEvents(); 
    } 
} 
+0

謝謝你的答案,即將測試。只是想知道如何設置json_url_list?東西lile [url1,url2,url3]? – ComeRun 2013-03-22 02:14:51

+0

是的。就像我說的,它可能需要一些調整,但我沒有任何數據來測試它。 – FakeRainBrigand 2013-03-22 02:37:42

+0

先嚐試不成功,順便說一下all_data是什麼? – ComeRun 2013-03-22 03:43:37