在一個ul上面使用了ng-if,然後在li上面使用了ng-repeat,再然後裡面具體上面的元素上使用了ng-model,請問怎麼取到這個model值,已經在ng-model上使用了$parent,但還是取不到值,程式碼如下:
<ul ng-if="datas.vote_choose_type==2">
<li class="opt" ng-repeat="num in datas.vote_options track by $index" ng-class="{'finished':num.is_voted == 1,'1':num.is_voted == 2}">
<input type="radio"
class="magic "
name="quan1"
value="{{num.option_id}}"
id="{{num.option_id}}"
title="{{num.option}}"
ng-model="$parent.option_id"
ng-checked="$parent.option_id"
ng-class="{'magic-radio':datas.vote_choose_type==1,'magic-checkbox':datas.vote_choose_type==2}" />
<label for="{{num.option_id}}">{{num.option}}</label>
</li>
</ul>
已經嘗試過使用ng-show,但是會影響從服務端獲取的具體的某個參數值,請問各位路過的大神們,幫忙解釋一下,是因為作用域的原因嗎?還是其他什麼原因,有什麼好的方法可以解決這個問題,跪謝! ! !
因為子作用域的原因,只需要在ng-if下面的ng-repeat裡面的ng-model上加一個$parent.$parent.你的雙向資料綁定名稱即可,已經測試過,暫未發現其他問題。