如何在按钮点击上应用ng-class

时间:2017-08-18 07:46:54

标签: javascript angularjs

Plunker.

在我的文本框中,当ng-model包含errorhilight''时,我想应用undefined类,当提交按钮单击时,需要进行检查。

<input type="text" class ="errorhilight" ng-model="name"  ng-class="{'errorhilight': (name == '' || name == 'undefined')}">

如何在点击按钮时应用errorhilight课程。

2 个答案:

答案 0 :(得分:5)

有很多方法可以做到。例如

<input type="text" ng-model="name"  ng-class="{errorhilight: highlightErrors && !name}">
<input type="submit" ng-click="validate();">

$scope.validate = function(){
  $scope.highlightErrors = true
}

答案 1 :(得分:0)

<input type="text" class ="errorhilight" ng-model="name"  ng-class="{'errorhilight': (name == '' || name == 'undefined')}">

让我们看看你做错了什么。在这里添加了类class ="errorhilight",有或没有条件删除。

第二部分为亮点保留一个变量。按下按钮就像@Yury Tarabanko解决方案一样真实。但最好的方法是使用验证器。

<form id="testForm" name="testForm"   ng-submit="validate()"  novalidate>

    <input type="text" ng-model="name"  name="name" 
       ng-class="{errorhilight: buttonClicked &&  testForm.name.$invalid}"  required >

     <input type="submit" ng-click="validate();">

</form>

并在控制器中

$scope.buttonClicked = false;
$scope.validate = function(){
  $scope.buttonClicked = true;
}