Javascript 是否有一种方法允许仅在输入数据时标记复选框?
我有一个ng中继器,每行有一个checkbox类型的输入,以及3个文本字段。我希望仅当用户在3个文本字段中的每个字段中输入一些文本时,才允许选中复选框。如果用户在没有先输入数据的情况下尝试选择复选框,我想显示一条警告消息 我假设我必须对三个ng模型(文本字段)进行一些检查,检查它们是否为null或未定义,但不确定如何在HTML中进行检查 我的HTML如下所示:Javascript 是否有一种方法允许仅在输入数据时标记复选框?,javascript,angularjs,twitter-bootstrap,Javascript,Angularjs,Twitter Bootstrap,我有一个ng中继器,每行有一个checkbox类型的输入,以及3个文本字段。我希望仅当用户在3个文本字段中的每个字段中输入一些文本时,才允许选中复选框。如果用户在没有先输入数据的情况下尝试选择复选框,我想显示一条警告消息 我假设我必须对三个ng模型(文本字段)进行一些检查,检查它们是否为null或未定义,但不确定如何在HTML中进行检查 我的HTML如下所示: <div ng-repeat="o in objects"> <input type="checkbox" c
<div ng-repeat="o in objects">
<input type="checkbox" class="myClass" ng-click="doSomething(argument)>
....
....
<input ng-model="model1">
<input ng-model="model2">
<input ng-model="model3">
您可以禁用它们并使用ng change
监视所有3个文本输入是否都有值
示例html:
<input type="text" ng-model="data.item3" ng-change="update()"/>
<input type="checkbox" ng-model="data.model1" ng-disabled="checksDisabled"/>
谢谢你的回答,我决定使用我在编辑中发布的路线,因为它的代码更少,但如果出现问题,我可以使用它作为备份:)。明白,我个人更喜欢html中的垃圾更少,也更容易用变量进行测试。也许你是对的,在html中进行检查是更费力还是在这种情况下没有问题?从ng禁用的CHECKS disabled检查是否更有效?或者两者都可以,函数很少被调用(仅事件),变量在事件之间不会改变
.controller('MainCtrl',function($scope){
$scope.checksDisabled=true;
var data = $scope.data ={ };
$scope.update=function(){
$scope.checksDisabled = !(data.item1 && data.item2 && data.item3);
}
});