2017-01-12 142 views
0

我在我的Asp.net MVC項目中使用Select2。我創建了一個博客。每篇文章都有一些標籤。我正在使用select2 multiselect來選擇標籤。在創建頁面中,我可以搜索並選擇標籤並保存在數據庫中。預選項目select2

問題: 在編輯頁面也我的select2工作正常。但我想在編輯頁面加載中添加一些用戶在創建頁面中添加的標籤。那麼用戶可以更改標籤。 我不能選擇2預選標籤

+0

我找到了正確的答案在這裏[http://stackoverflow.com/a/3740912/6303651 ](http://stackoverflow.com/a/3740912/6303651) – matius

回答

0

這個小jQuery的功能選項添加到選擇2

$.fn.select2AddOptions = function(options) { 
    this.each(function(){ 
     var $ele = $(this); 
     var data = $ele.data('select2'); 
     if(data) //the $.extend is not recursive change the false for true if needed 
      $ele.select2($.extend(false,{},data.options.options,options)); 
    }); 
    return this; 
} 

然後你可以用它來添加額外的數據不在裏面<option>或選擇2數據:

$('#element').select2AddOptions(
{data:[{id:{{ location.id }},text:'{{ location.name }}',color:'{{ location.color }}'}]} 
).trigger('change'); 

如果您需要更改所選元素:

$('#element').val(['id1','id2']).trigger('change'); 

我你需要選擇2,當您選擇選項解僱他的情況下,您將需要manualy火災事件是這樣的:

$('#element').trigger($.Event('select2:select', {params: {data: [...]}})) 
+0

非常感謝你 – matius