选择标记的选定值在 angularjs 中的开关外部不会更改



如果我在ng-switch中放置一个选择标签,那么双向绑定不适用于ng-switch外部的选择标签ng-model。

请参考以下代码

<div ng-switch on="OutputStep">
                <div ng-switch-when="0">
                   Switch Step One
                </div>
                <div ng-switch-when="1">
                     Switch Step Two<br/>
                       <select ng-model="SelectedReviewOption" ng-options="review as review.DisplayValue for review in ReviewOptions">
                       </select>
                       Selected Value : {{SelectedReviewOption.DisplayValue}}             
                </div>                        
</div>
<button ng-click="OutputStep = '0'" ng-disabled="OutputStep == '0'">
Back
</button>
<button ng-click="OutputStep = '1'" ng-disabled="OutputStep == '1'">
Next
</button>
Selected Value Outside Switch : {{SelectedReviewOption.DisplayValue}}

在此小提琴中,单击"下一步"按钮以查看第二个开关页面。更改选择标记中的值。观察更改的值无法在开关外部显示 –

在你的模型中有一个'.将确保原型遗传发挥作用。所以,使用

<input type="text" ng-model="someObj.prop1"> rather than 
<input type="text" ng-model="prop1">

工作小提琴

了解范围

ng模型中使用$parent.var_name,因为ng switch会创建它单独的作用域,如果它没有被ng-init或其他东西显式定义,则该变量将被限制为它(在控制器中(

现在就在这里。您需要使用 $parent 才能到达交换机块之外的父范围

$parent.SelectedReviewOption

http://jsfiddle.net/cobc0u3p/6/

相关内容

  • 没有找到相关文章

最新更新