我是Angular的新手,我无法实现一些非常简单的事情,假设我们有几个复选框输入循环,后跟一个input
文本字段,如下所示:
<body ng-app="ngToggle">
<div ng-controller="AppCtrl">
<input type="checkbox" ng-repeat="btn in btns" ng-model="changing" ng-change="change(btn.value, 'other')" class="here" value="{{btn.value}}">
<input type="text" class="uncheck" ng-disabled="other">
<!-- Here comes the other one -->
<input type="checkbox" ng-repeat="btn in btns" ng-model="changing" ng-change="change(btn.value, 'other2')" class="here" value="{{btn.value}}">
<input type="text" class="uncheck" ng-disabled="other2">
</div>
</body>
这里的想法是这样的:一旦选中了值为“other”的复选框,它将启用change
函数的field参数中确定的相应文本字段,因此我开发了一个函数{{1并且像这样工作:
change(value, field)
但问题是,这不起作用,我不知道是否以正确的方式进行此操作, $scope.btns = [
{value:'one'},
{value:'two'},
{value:'other'}
];
$scope.other = true;
$scope.other2 = true;
$scope.change = function(value, field) {
if(value == 'other'){
if($scope.field == false){
$scope.field = true;
} else {
$scope.field = false;
}
}
};
是问题,如何将参数传递给$scope.field
希望有人可以帮助我。 感谢。
答案 0 :(得分:0)
您可以使用ng-model
复选框,然后使用ng-disabled
收听属于复选框的模型。
<input type="checkbox" value="Other" ng-model="myCheckboxes['other']" />
<input type="text" ng-disabled="myCheckboxes['other']" />
答案 1 :(得分:0)