2014-05-13 68 views
1

我正在使用Select2(http://ivaynberg.github.io/select2/)將表單的輸入字段(假設其ID爲topics)處於標記模式,並帶有現有標記列表(允許用戶選擇其中一些標記,或以創建新的)由一系列遠程數據提供。在Select2中,formatSelection和formatResult如何工作?

數組(list.json)正確地從我的服務器獲取。它有idtext字段,因爲Select2似乎需要這些字段。因此,它看起來像這樣:

[ { id: 'tag1', text: 'tag1' }, { id: 'tag2', text: 'tag2' }, { id: 'tag3', text: 'tag3' } ] 

在HTML文件中的腳本是這樣的:

$("#topics").select2({ 
    ajax: { 
     url: "/mypath/list.json", 
     dataType: 'json', 
     results: function (data, page) { 
     return {results: data}; 
     }, 
    } 
}); 

但輸入欄顯示「搜索」,這意味着它不能使用數組標記支持。

在使用Select2的腳本中,我知道我必須定義formatSelectionformatInput,但是我沒有弄清楚它們應該如何工作,儘管我已經閱讀了Select2文檔...感謝您的幫助!

回答

3

您需要添加像解釋here一樣的功能。在你的例子中:

function format(state) { 

    return state.text; 
} 
+0

謝謝。我試過這個:'function format(item){return item.text; } $( 「#話題」)選擇2({ AJAX:{ 網址: 「/mypath/list.json」, 數據類型: 'JSON', 結果:功能(數據頁){ 回報{結果:數據};} } , formatResult:格式, formatSelection:格式, escapeMarkup:功能(M){回報米;} });',但它仍然沒有工作。 – GBC

+0

你能記錄傳入格式的藝術嗎? – Vinz243

+0

你是什麼意思?未定義?我沒有打過電話? – Vinz243

相關問題