2017-10-16 4 views
1

각도 응용 프로그램으로 Select2를 사용하려고하는데 바인딩에 문제가 있습니다. Id를 배열 한 모델이 있는데,이 모델을 바인딩합니다. Select2를 사용하지 않고 기본값을 사용하면 잘 작동하지만 select2를 사용하자마자 바인딩이 손실됩니다.Select2 비 바인딩

cultureIds를 표시하기 위해 사전 섹션을 추가했습니다. 보시다시피 업데이트되지 않습니다. .select2() 함수를 호출하지 않으면 제대로 바인딩됩니다.

옵션 태그에서도 ng-repeat를 시도했지만 동일한 결과가 나타납니다. 나는 내 문제를 보여주기 위해 jsFiddle을 포함 시켰습니다

<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> 

: 문제를 일으키는 HTML 아래

. http://jsfiddle.net/gymagmor/

+0

문제를 표시하는 데 필요한 최소한의 코드 만 게시 하시겠습니까? –

+0

완료 .. 이것이 이미 필요한 코드의 최소 양이지만, 나는 주변 태그를 제거했습니다. – Ronald

+0

이 바이올린은 또한 바인딩의 부족을 보여줍니까? http://jsfiddle.net/gymagmor/ –

답변

0

buh-buh 님이 제안한 것처럼 "select2 : select"이벤트에 바인딩하여이 문제를 해결하고 데이터를 처리 한 다음 다이제스트를 트리거 할 수있었습니다.

0

죄송합니다.이 질문에 답하지 않겠지 만 jQuery select2를 사용하거나 원시 각도 버전을 사용하는 것에 대해서는 조언하고 싶습니다.

AngularJS 응용 프로그램을 작성하고 있으므로 JQuery 방식이 아닌 angularjs 방식으로 시도해야합니다. 따라서 DOM 조작이 적습니다.

확인이 가장 UI-선택 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