我有一个名为“myForm”的表单,我有很多必填字段。
<input type="text" name="form.user.name" ng-model="form.user.name" required/>
<input type="text" name="form.user.email" ng-model="form.user.email" required/>
<input type="text" name="form.user.phone" ng-model="form.user.phone" required/>
<input type="text" name="form.user.accountNumber" ng-model="form.bank.accountNumber" required/>
<input type="text" name="form.user.accountName" ng-model="form.bank.accountName" required/>
现在我只想检查form.user
信息的有效性。我怎么能这样做?
答案 0 :(得分:2)
首先浏览此链接 https://docs.angularjs.org/guide/forms
自定义验证示例
change_to_error
在<form name="form" class="css-form" novalidate>
<div>
<label>
Size (integer 0 - 10):
<input type="number" ng-model="size" name="size"
min="0" max="10" integer />{{size}}</label><br />
<span ng-show="form.size.$error.integer">The value is not a valid integer!</span>
<span ng-show="form.size.$error.min || form.size.$error.max">
The value must be in range 0 to 10!</span>
</div>
</form>
的以下行中,ng-show
是表单名称,form
是输入字段名称,size
是存储失败验证程序的默认对象。 $error
是一个执行输入字段验证的指令。
integer
<强>脚本强>
<span ng-show="form.size.$error.integer">The value is not a valid integer!</span>
答案 1 :(得分:1)
你可以试试..
当您在ngApp中放置<form>
标记时,AngularJS会自动添加表单控制器(实际上有一个指令,称为form
,添加了非必要的行为)。
因此,要检查表单有效性,您可以检查范围的$scope.yourformname.$valid
属性的值。
每个输入name
的验证信息都以form
的名称在范围内公开。
HTML
<form name="someForm" action="/">
<input name="username" required />
<input name="password" type="password" required />
</form>
JS
$scope.someForm.username.$valid
// > false
$scope.someForm.password.$error
// > { required: true }
您可以在开发者Guide部分获取有关表单的更多信息。
答案 2 :(得分:0)
参考角度验证https://docs.angularjs.org/guide/forms 给出不同的名字。你被赋予最后三种输入类型的同名。
<input type="text" name="form.user.name" ng-model="form.user.name" required/>
<input type="text" name="form.user.email" ng-model="form.user.email" required/>
<input type="text" name="form.user.phone" ng-model="form.user.phone" required/> // same name all three name="form.user.phone"
<input type="text" name="form.user.phone" ng-model="form.bank.accountNumber" required/> // same name all three name="form.user.phone"
<input type="text" name="form.user.phone" ng-model="form.bank.accountName" required/> // same name all three name="form.user.phone"