2017-10-16 158 views
1

我想用我的角度應用程序使用Select2,但我遇到了綁定的麻煩。有一個模型包含一系列的Ids,我將它們綁定在一起。當使用默認(沒有Select2)時,它工作正常,但只要我使用select2,我就失去了綁定。Select2沒有約束力

我已經添加了前面的部分來顯示cultureIds。正如你所看到的,它不會更新。當您不調用.select2()函數時,它會正確綁定。

我曾嘗試在選項標籤中進行ng-repeat,但結果相同。

下面這導致問題的HTML:

<select class="Select2" 
     ng-model="region.cultureIds" 
     multiple="multiple" 
     ng-options="culture.id as culture.displayName for culture in cultures"> 
</select> 
<pre>{{region.cultureIds | json}}</pre> 

我已經包含了的jsfiddle來證明我的問題。 http://jsfiddle.net/gymagmor/

+0

你會發布只顯示你的問題所需的最低數量的代碼嗎? –

+0

完成..雖然這已經是必要的代碼的最低數量,我認爲..我已經刪除了周圍的標籤。 – Ronald

+0

這個小提琴是否也顯示出缺乏約束力? http://jsfiddle.net/gymagmor/ –

回答

0

正如buh-buh所建議的那樣,我可以通過綁定到「select2:selection」事件來解決這個問題,處理數據,然後觸發一個摘要。

0

對不起,我不會回答這個問題,但我想建議不要使用jQuery的select2和本地角的版本。

因爲你正在編寫AngularJS應用程序,你應該嘗試以angularjs的方式做事情,而不是JQuery的方式 - 少DOM操作。

檢查這一點,最好的用戶界面 - 選擇angularjs,我一直在使用它在多個項目中,它的偉大:

https://github.com/angular-ui/ui-select

這樣,您將繼續控制器和/或範圍,並沒有對所有任何DOM操作你都可以使用select的值 - 它也支持多選。

雖然我們在推薦的東西,檢查這一項,這是託德座右銘AngularJS風格指南,事實上最好的AngularJS準則在線(再加上它會爲您準備了一下對角):

https://github.com/toddmotto/angularjs-styleguide

+1

也許更新您的鏈接到https://github.com/angular-ui/ui-select,因爲另一個已被棄用。 –

+0

謝謝。我會看看這個。如果它符合我的需求,我會切換到這個。 – Ronald