AngularJS中一些表单验证属性:

  1. 修改过的表单,只要用户修改过表单,无论输入是否通过验证,该值都将返回false
    {formName}.{inputFieldName}.$dirty
  2. 合法的表单,这个属性用来判断表单的内容是否合法的,如果合法则该属性的值为true
    {formName}.{inputFieldName}.$valid
  3. 不合法的表单,这个属性用来判断表单的内容是都不合法,如果不合法则该属性的值为true,与valid正好相反
    {formName}.{inputFieldName}.$invalid
  4. 错误,$error对象包含了当前表单的所有验证内容,以及它们是否合法的信息,如果验证失败,该属性值为true,如果验证成功,则该值为false
    {formName}.{inputFieldName}.$error
  5. form表单是否提交,该属性用来判断表单是否被用户提交
    {formName}.$submitted

Angular Material中表单验证错误消息结合使用了ng-messages的用法。以下是一个简单例子及简单说明:

点击提交按钮之后,form标签中ng-submit将表单的内容进行提交,js中进行是否合法判断;

ng-pattern='/^正则表达式$/'  用来进行自定义表单验证,一般为正则表达式。

ng-messages="{formName}.{inputFieldName}.$error" 用来验证该表单内容是否错误

ng-message-exp=['required','minlength','maxlength','pattern']  这里是所需要验证的属性

<form name="changePasswordForm" ng-submit="$ctrl.changePassword(changePasswordForm)" ng-cloak novalidate>
<div>
<label style="margin-right: 38px; margin-bottom: 0;">密码</label>
  <md-input-container class="md-block no-margin" md-no-float>
  <input name="password" type="password" ng-model="$ctrl.data.password"
placeholder="请输入密码"
style="width: 300px"
ng-pattern='/^\+?[1-9]*\d$/'
                      minlength="6" maxlength="20"
required/>
<div class="errors" ng-messages="changePasswordForm.password.$error">
  <div ng-message-exp=['required','minlength','maxlength','pattern']>
  您输入的密码格式不正确
  </div>
</div>
</md-input-container>
</div>
  <md-button type="submit">提交</md-button>
</form> <!--js-->
this.changePassword=function(changePasswordForm){
  if(changePasswordForm.$invalid){
  //本次验证不合法
  return  
  }
}

  

Angular Material表单提交及验证的更多相关文章

  1. javascprit form表单提交前验证以及ajax返回json

    1.今天要做一个手机验证码验证的功能.需求是前端页面点击发送 短信验证码,后台接收后通过ajax返回到前端,之后前端在提交时候进行验证.思路很简单,不过做的过程还是学到不少的东西. 1.ajax请求后 ...

  2. yii2表单提交CSRF验证

    Yii2表单提交默认需要验证CSRF,如果CSRF验证不通过,则表单提交失败,解决方法如下: 第一种解决办法是关闭Csrf public $enableCsrfValidation = false; ...

  3. JavaScript form表单提交与验证

    原网址:https://blog.csdn.net/vipwxs/article/details/79119701 一.form对象的属性: name:获取表单的名称,该name一般给JS使用 met ...

  4. Html form 表单提交前验证

    可以使用form表单的onsubmit方法,在提交表单之前,对表单或者网页中的数据进行检验. onsubmit指定的方法返回true,则提交数据:返回false不提交数据. 直接看下面的代码: 1 & ...

  5. Django之form表单提交并验证

    1.提交的时候会报错 2. 需要在setting里面注释掉一句话,关闭跨站请求检查. 3. 注释掉以后,理论上就不报错了.可我还是卡壳了. 4. 通过在网上找方法,修复错误. 原因:表单action字 ...

  6. UI标签库专题三:JEECG智能开发平台 FormValidation(表单提交及验证标签)

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/zhangdaiscott/article/details/28484209  自己定义弹出框提示 ...

  7. 关于使用 AJax 生成Form表单,且表单提交需要验证,验证实效的解决方法

    @Ajax.ActionLink("添加", "AddUser",new AjaxOptions() {InsertionMode = InsertionMod ...

  8. Laravel-admin 表单提交同时验证俩个以上的字段唯一值

    $name = isset(request()->all()['name']) ? request()->all()['name'] : ''; $id = isset(request() ...

  9. AngularJS 表单提交后显示验证信息与失焦后显示验证信息

    虽然说AngularJS的实时表单验证非常有用,非常高效方便,但是当用户还没有完成输入时便弹出一个错误提示,这种体验是非常糟糕的. 正常的表单验证逻辑应该是在用户提交表单后或完成当前字段中的输入后,再 ...

随机推荐

  1. 2017 ACM-ICPC Asia Xi'an Problem A XOR(异或线性基 )

    题目链接  2017西安赛区 Problem A 题意  给定一个数列,和$q$个询问,每个询问中我们可以在区间$[L, R]$中选出一些数. 假设我们选出来的这个数列为$A[i_{1}]$, $A[ ...

  2. [Math Review] Statistics Basics: Main Concepts in Hypothesis Testing

    Case Study The case study Physicians' Reactions sought to determine whether physicians spend less ti ...

  3. TCP/IP,http,socket,长连接,短连接 —— 小结

    TCP/IP是什么? TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层.    在网络层有IP协议.ICMP协议.ARP协议.RARP协议和BOOTP协议.    在传输层中有TCP协议 ...

  4. ubi and ubifs应用手记

    转:http://blog.sina.com.cn/s/blog_5de7d9f80100dpa4.html 1.配置ubi and ubifsin .config  CONFIG_MTD_UBI=y ...

  5. python装饰器的作用

    常见装饰器:内置装饰器:类装饰器.函数装饰器.带参数的函数装饰器 装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象.它经常 ...

  6. 甲骨文Java Archive

    甲骨文Java Archive 甲骨文Java Archive提供自助下载访问我们的一些历史的Java版本. 警告: 这些旧版本的JRE和JDK来帮助开发人员提供了在旧系统调试问题. 他们没有更新最新 ...

  7. Rails 状态码

    Response Class HTTP StatusCode Symbol Informational 100 :continue Success 200 :ok Redirection 300 :m ...

  8. go语言25个关键字总结

    var和const :变量和常量的声明var varName type 或者 varName : = valuepackage and import: 导入func: 用于定义函数和方法return ...

  9. Android无数据线调试方法

    平时在Android设备上调试程序.通常是将Android设备用数据线和PC机相连. 可是,在没有数据线的情况下也能够: 1.将PC机和Android设备连到同一网段. 2.获取Android设备的I ...

  10. java起源和基本数据类型

    1.Java起源于1994年的sun公司,起初并没有体现出它独特的优势.sun公司一度想要放弃这个项目.亏的领头人的力争.Java才的以存在.二十世纪末.随着互联网的兴起.交互式设计越来越多的应用,对 ...