2012-12-26 43 views
0

我一直在努力與jquery select2(Select2),試圖實現ajax回調,從ASP MVC ActionResult獲取數據最近掙扎。如何使jquery select2與ASP MVC 3

這是我的HTML代碼:

<input type="hidden" id="e2" style="width: 500px;"> 

這是JS代碼:

<script> 
$(document).ready(function(){ 

    $("#e2").select2({ 
     minimumInputLength: 1, 
     ajax:{ 
      url: "http://localhost:1800/Test/GetCountries", 
      dataType:"jsonp", 
      data: function(term, page){ 
       return { 
        query: term 
       }; 
      }, 
      results: function(data){ 
       return { 
        results: data 
       }; 
      } 
     } 
    }); 

}); 

的getCountries功能非常簡單,它只是返回,術語相匹配的國家的搜索。

[{"id":"AE","text":"United Arab Emirates"},{"id":"UK","text":"United Kingdom"},{"id":"US","text":"United States"}] 

我試圖改變從應用/ JSON格式的文本來回,但沒有成功:搜索「團結」一詞時,這是一個樣本。我想我在json函數返回時錯過了一些東西,但在三個小時後,我仍然不知道這裏可能會出現什麼問題。

當我查看網絡選項卡上的Chrome調試器時,它似乎調用該函數並正在發送數據。但是,當我輸入字母沒有任何顯示時,它只是永遠顯示「搜索...」文本。

如果有人出現同樣的情況,請分享您的想法。提前致謝。

回答

0

自從我問這個問題已經有一段時間了。儘管在默認Bootstrap的Typeahead上可以做到這一點,但我還沒有找到讓Select2工作的時間。

所以,如果有人來了,不要麻煩回答。

0

這裏的問題是

dataType:"jsonp" 

解決方案:

dataType:"json" 

查看更多What is JSONP all about?

+0

謝謝,但這不是問題的實際。我需要在生產上進行跨域調用。最後,我創建了一個JS自動完成控件。花了我4天,工作很好。 – coffekid