我使用了角度ui.select,并且我在将所选值绑定到模型时遇到问题。我正在尝试使用ui.select ng-model="data"
设置对象的变量。但由于某种原因,它不会选择值不会绑定到模型。这是我正在使用的代码:
<ui-select ng-model="data" ng-disabled="disabled" theme='select2' style="min-width: 300px;" title="some title">
<ui-select-match placeholder="Select a credit status in the list">[[ $select.selected.variable ]]</ui-select-match>
<ui-select-choices repeat="options in options | filter: $select.search">
<p>[[ options.variable ]]</p>
</ui-select-choices>
</ui-select>
在我的情况下,使用它不会将所选值绑定到模型。然后我使用了$parent.data
,但是当我使用多个ui-choose时,只有一个能够一次工作。
必须有一些我做错的事情。感谢任何帮助。
答案 0 :(得分:5)
这是一个常见的引用问题。
您可以将对象用作ng-model
ng-model="data.value"
或者您可以尝试初始化控制器内的数据。
$scope.data = null;
或者您可以使用John Papa's style guide中所述的控制器视图语法(这样可以避免一次又一次地遇到同样的问题)。
<div ng-controller="CustomerController as controllerName">
<ui-select ng-model="data" ng-disabled="disabled" theme='select2' style="min-width: 300px;" title="some title">
<ui-select-match placeholder="Select a credit status in the list">[[ $select.selected.variable ]]</ui-select-match>
<ui-select-choices repeat="options in options | filter: $select.search">
<p>[[ options.variable ]]</p>
</ui-select-choices>
</ui-select>
</div>
答案 1 :(得分:2)
此Plunker是您正在使用的组件的演示:
http://plnkr.co/edit/6iiLpQlZpqjd9tIyTFQY?p=preview
尝试将对象用作ng-model。
ng-model="data.attribute"
答案 2 :(得分:0)
由于您尝试使用多个ui-selection,我建议创建并初始化包含在$ scope对象中的数组,如下所示:
$scope.selections = { selectedData = [] };
然后对于ng-model,您可以使用正确的点符号:
ng-model="selections.selectedData"
希望这有帮助!