在ng-change中访问ng-options变量

时间:2015-05-29 02:13:57

标签: angularjs angularjs-ng-options

这里看似简单的问题。我有一个ng-options select标签,它可以起作用。

基本上我的ng-change功能无法正常工作,因为第一个参数" v"是未定义的。有什么帮助吗?

<select ng-model="d.sub_customer" ng ng-options="v.description as v.description for v in subCustomers" ng-change="updateCustomer(v,d.id)"></select>

2 个答案:

答案 0 :(得分:1)

您无法访问ng-options表达式外的迭代变量(与ng-repeat不同)。因为ng-options只使用该表达式并为DOM中的select绘制选项。它确实没有创建一个范围来阻止这些属性,这就是为什么它不像ng-repeat。在您的情况下d.sub_customer将是选定的v.description,因此您可以在ng-change中传入,{

  ng-change="updateCustomer(d.description,d.id)"

答案 1 :(得分:0)

<select ng-model="d.sub_customer" ng ng-options="v.description as v.description for v in subCustomers" ng-change="updateCustomer(v,d.sub_customer)"></select>