我正在阅读一个代码并进入了一个标签元素与数据-ng-model一起使用的部分?
<label class="btn btn-success"
data-ng-model="myController.statusFilter"
data-btn-radio="'disabled'"
data-ng-click="myController.method()">
Disabled
</label>
答案 0 :(得分:8)
它不起作用。由于ngModel只能与输入一起使用,因为它涉及双向数据绑定。
Label不处理用户输入,因此不需要ngModel。因此,如果要将范围变量绑定到标签,则可以使用 expressions 。
像
<label> {{labelText}} </label>
注意:您应该在控制器中定义labelText,例如$scope.labelText = "Hello"
答案 1 :(得分:3)
尝试在Plunker中使用ng-bind
示例。
答案 2 :(得分:1)
<label class="btn btn-success"
data-ng-bind="myController.statusFilter"
data-btn-radio="'disabled'"
data-ng-click="myController.method()">
Disabled
</label>
在这种情况下,ng-bind将起作用。
答案 3 :(得分:0)
app.directive("editable", function ($document) {
return {
scope: {
text: "=ngModel"
},
restrict: 'A',
link: function (scope, element, attrs, ctrl) {
element.text(scope.text);
scope.$watch('text', function (newValue, oldValue) {
if (newValue != oldValue) {
if (newValue != element.text())
element.text(newValue);
}
});
element.on("keyup", function (event) {
scope.text = element.text();
});
}
};
});
<label editable="true" contenteditable="true" ng-model="value"></label>
答案 4 :(得分:-3)
不,因为它不会用于任何目的。该模型会产生什么影响?当模型绑定到标签时,您会如何影响模型?
如果您正在尝试更新标签内的文字,则应该在模板中添加一个变量:
<label class="btn btn-success"
data-btn-radio="'disabled'"
data-ng-click="myController.method()">
{{ myController.statusFilter }}
</label>