1
我目前正试图在通过ng-options
选择另一个值时在控制器中设置变量。例如,如果根据title
从Companies
中选择一个,则将myValue
设置为特定公司的相应id
。以下是HTML片段:在选择ng选项时更新控制器变量
<select multiple="" class="form-control" ng-model="myValue"
ng-options="d.title for d in Companies"></select>
<select multiple="" class="form-control">
<option ng-placeholder="{{myValue}}"></option>
</select>
控制器
而且我Company
,Companies
和myValue
:
function Company(title, last, pw, id) {
this.title = title;
this.id = id;
}
$scope.Companies = [];
$scope.myValue = '';
这里是温控功能是种子Companies
阵列:
$scope.getValues = function() {
$http.get('/route/to/names')
.success(function (data, status, headers, config) {
for (var i = 0; i < data.length; i++) {
$scope.Companies.push(new Company(data[i]['Title'],data[i]['ID']));
}
})
};
程序背后的目的是根据所选的从数据库中进一步提取数据。我在页面上设置myValue
作为选项的原因是为了确定操作是否已实现。任何意见如何解决这个或类似的问题将不胜感激!谢谢!
'd.id为d.title对于公司中的d来说 - 确保使用正确的外壳,因为在公司构造函数中有'title'和'id'小写,但是适合放在for循环中。 – KreepN
我是否缺少某种会触发'myVal'初始化的'ActionEvent'?或者仅仅是选择一个足以让数据绑定在我的程序中出现的选项?哦,它是大写的,因为它正在访问对象的特定属性“标题”和“ID”。 – WakaChewbacca
那么你有你的模型绑定到一个空字符串,所以我假设你选择插入一个选项在开始这不是一个ID。它将受到你的选择的约束。你甚至不能在你的控制器中使用它,当你做出选择时,它会被添加到范围中。 – KreepN