我是棱角分明的新手.我很困惑的$dirty和$invalid,他们几乎听起来相同.
是什么区别$dirty,并$invalid在使用email ng-model?下面是scenario.这是W3Schools的一个例子.
<form ng-app="myApp" ng-controller="validateCtrl" name="myForm" novalidate>
<p>
Username:<br>
<input type="text" name="user" ng-model="user" required>
<span style="color: red" ng-show="myForm.user.$dirty && myForm.user.$invalid">
<span ng-show="myForm.user.$error.required">Username is required.</span>
</span>
</p>
<p>
Email:<br>
<input type="email" name="emaill" ng-model="email" required>
<span style="color: red" ng-show="myForm.email.$dirty && myForm.email.$invalid">
<span ng-show="myForm.email.$error.required">Email is required.</span>
<span ng-show="myForm.email.$error.email">Invalid email address.</span>
</span>
</p>
<p>
<input type="submit" ng-click="Count()"
ng-disabled="myForm.$invalid" title="Submit" value="Submit">
</p>
</form>
Run Code Online (Sandbox Code Playgroud)
编辑1:
我很想知道我是否将ng-model名称更改email为email8不再有效.
<input type="email" name="emaill" ng-model="email8" required>
Run Code Online (Sandbox Code Playgroud)
验证是否通过myForm未使用ng属性定义的html元素名称进行.它是如何工作的?
ng-show="myForm.email.$dirty && myForm.email.$invalid"
Run Code Online (Sandbox Code Playgroud)
Jay*_*ram 10
$dirty:如果用户已与表单进行过交互,则为TRUE.$invalid:如果至少一个包含表单和控件无效,则为TRUE.在问题中更新之后......正在对表单元素名称进行验证.跟踪表单中的所有ng-model以及它的工作方式.
更改ng-model名称也不会影响验证.我尝试了你的链接,它对我有用.这必须奏效.
| 归档时间: |
|
| 查看次数: |
19319 次 |
| 最近记录: |