2014-02-25 74 views
7

我正在使用jQuery select2插件,並試圖讓AJAX與我的ext數據顯然不工作,我只是想知道如果有人能指出我做錯了什麼或缺少什麼?jQuery select2 AJAX不工作

注:這僅僅是選擇V3.5.2

我的JS:

$('#cliselect').select2({ 
    ajax: { 
     dataType: "json", 
     url: "clientprojectpopulate.php", 
     results: function (data) { 
      return {results: data}; 
     } 
    } 
}); 

HTML:

<select id="cliselect" name="cliselect" style="width: 100%;" /></select> 

我的JSON回報(我認爲是有效的):

[{"id":"62","text":"Alberta Innovates Health Solutions"},{"id":"4","text":"Alterna Savins & Credit Union"},{"id":"63","text":"BC Patient Safety & Quality Council"}] 

回答

5

想通了它,因爲我使用<select>

它必須爲Ajax數據加載<input> ...

<input type="hidden" id="cliselect" name="cliselect" style="width: 100%;" /> 
+5

在選擇二4.0是倒過來。它沒有工作,因爲它是一個輸入,而不是一個選擇。 – coorasse

10

Select2控制更新到4.0版本。現在輸入字段不再工作,應該有select元素。

結果已更改爲

processResults: function (data) { 
    return { 
     results: data 
    }; 
} 

裏面的processResults功能,您可以使用它們像這樣:

processResults: function (data) { 
    var results = []; 
    $.each(data, function (index, account) { 
     results.push({ 
      id: account.AccountID, 
      text: account.AccountName 
     }); 
    }); 

    return { 
     results: results 
    }; 
}