AngularJs获取所选选项的值

时间:2014-04-08 07:40:31

标签: angularjs ng-options angularjs-ng-change

如何在ng-change" ReadData"中获取所选选项的值? 模板是Title,Id和body的数组

<select class="form-control" id="inputEmail" 
    ng-change="ReadData(Template.Title)" 
    ng-model="email.Template" name="inputEmail" 
    ng-options="b.Id as b.Title for b in Template">
</select>

3 个答案:

答案 0 :(得分:1)

这可能有效:

纳克变= “READDATA(模板[$指数] .title伪)”

答案 1 :(得分:0)

由于select已绑定(通过ngModel)到email.Template,您可以从那里访问它的值。 E.g:

<select ... ng-change="ReadData(email.Template)" ...

请注意,由于您定义ngOptions的方式,email.Template将绑定到teplate的id。如果您希望它绑定到整个模板对象本身(例如,您可以使用email.Template.Title),请更改您的代码:

<select ... ng-options="b as b.Title for b in Template" 
        ... ng-change="ReadData(email.Template.Title)" ...

答案 2 :(得分:0)

您不需要使用ng-change来获取所选数据,<select> ng-model绑定将保留所选数据。您可以在ng-change中获得该值;

<select class="form-control" id="inputEmail"
    ng-change="onOptionChange()" 
    ng-model="email.Template" name="inputEmail" 
    ng-options="b.Id as b.Title for b in Template">
</select>

这是 JSFIDDLE


编辑:此外,如果您想要整个选定的模板对象,请将ng-options更改为:

ng-options="b.Title for b in Template"

这会将b分配给email.Template,而不仅仅是b.Id。

相关问题