这里有点琐碎,但对Angular来说是个新人,请原谅。
每当我有一个输入字段时 - 如果该字段实际上包含一些有效内容,我只想要一个动作。
我发现我必须首先实例化一个变量,然后将其分配给任何输入,然后在if中进行布尔检查。
这是解决这个问题的正确方法吗?如果我没有实例化变量(或者根本不使用变量),我会遇到undefined
错误:
var textToSearch = '';
textToSearch = $scope.main.searchInputField.trim();
if (textToSearch){
$location.path('/search/'+textToSearch);
}
另外(另一方面) 我正在清理服务器端的所有内容,但是在Angular /客户端,我可以使用快速简单的功能吗?
由于
答案 0 :(得分:0)
我想你有'main.searchInputField'的ng-model,所以如果你想检查字段是否为空,你可以写
$scope.main = {};
if($scope.main.searchInputField.trim().length > 0){
//do stuff
}
答案 1 :(得分:0)
假设您输入字段1的ng-model
为some.data
,输入字段为some.data1
for(var i=0; i<$scope.some.length;i++){
if($scope.some[i]){
//do something
}
}
它将检查每个字段。
答案 2 :(得分:0)
这是使用Bootstrap进行电子邮件验证,但如果您使用自己的类,则适用相同的逻辑。
<div ng-class="(emailRegExp.test(email) && email != null) ? 'has-success' : 'has-error'" class="form-group has-feedback">
<div class="input-group">
<div class="input-group-addon">
<span class="glyphicon glyphicon-envelope"></span>
</div>
<input ng-model="email" ng-change="checkEnableSubmit()" id="email" placeholder="Email Address" type="text" class="form-control" aria-describedby="emailStatus">
</div>
<span ng-class="(emailRegExp.test(email) && email != null) ? 'glyphicon-ok' : 'glyphicon-remove'" class="glyphicon form-control-feedback" aria-hidden="true"></span>
</div>
ng-class指令在以下情况下完成验证: