Javascript 手动高亮显示角度形式的所有无效输入

Javascript 手动高亮显示角度形式的所有无效输入,javascript,angularjs,forms,validation,Javascript,Angularjs,Forms,Validation,这项任务有点原始 我得到了一个包含各种输入的简单角度表单,我想手动突出显示无效输入(例如,在提交操作时) 我试图循环无效输入,假设它们必须有某种方法来突出显示错误,但不幸的是,它们没有 形式也一样$setDirty()也不起作用 我正在使用ng form指令访问表单和输入 AngularJS版本是1.2.x.您的表单标记应该是这样的,这样当您单击submit ng类时,它将在表单上添加submitted类,这将让您知道,无论何时您提交表单和字段上的类时,ng无效类,您都可以突出显示这些元素 标记

这项任务有点原始

我得到了一个包含各种输入的简单角度表单,我想手动突出显示无效输入(例如,在提交操作时)

我试图循环无效输入,假设它们必须有某种方法来突出显示错误,但不幸的是,它们没有

形式也一样<代码>$setDirty()也不起作用

我正在使用
ng form
指令访问表单和输入


AngularJS版本是1.2.x.

您的表单标记应该是这样的,这样当您单击submit ng类时,它将在
表单上添加
submitted
类,这将让您知道,无论何时您提交表单和字段上的类时,
ng无效
类,您都可以突出显示这些元素

标记

<ng-form name="form" ng-class="{submitted: submitted}" ng-submit="submitted=true; submit();">
   <input type="text" name="firstname" ng-model="formData.firstname">
   <input type="text" name="lastname" ng-model="formData.lastname">
   <input type="submit" value="submit">
</ng-form>

使用ng模式必需它将检查您的验证。在Submiy上,您还可以自定义验证

例如:


首先,您必须明确无效输入对您意味着什么(空?),其次,输入只是html元素,因此它们没有“出错时突出显示”之类的方法,只有DOM操作函数。我给你的建议是考虑使用角度验证:是的,似乎是对它的过度考虑:谢谢。你的意思是OvrRead??基本上,这是CSS解决方案,我正在寻找JavaScript一。但这是多余的,prolly。@mms27很高兴在这里它帮助了你。。谢谢:)
.submitted input.ng-invalid {
   border: solid 1px red;
}
<div ng-app ng-controller="formCtrl">
<form name="myForm" ng-submit="onSubmit()">
    <input type="number" ng-model="price" name="price_field" ng-pattern="/^[0-9]{1,7}$/" required>
    <span ng-show="myForm.price_field.$error.pattern">Not a valid number!</span>
    <input type="submit" value="submit"/>
</form>
</div>
function formCtrl($scope){
    $scope.onSubmit = function(){
        alert("form submitted");
    }
}