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. FZU-2216 The Longest Straight(尺取法)

     Problem 2216 The Longest Straight Accept: 523    Submit: 1663Time Limit: 1000 mSec    Memory Limit ...

  2. Shellcode开发辅助工具shellnoob

    Shellcode开发辅助工具shellnoob   Shellcode开发的过程中会遇到很多繁杂的工作,如编译.反编译.调试等.为了减少这部分工作,Kali Linux提供了开发辅助工具shelln ...

  3. AtCoder 2376 Black and White Tree

    D - Black and White Tree Time limit : 2sec / Memory limit : 256MB Score : 900 points Problem Stateme ...

  4. 【bzoj3261】【最大异或和】可持久化trie树+贪心

    [pixiv] https://www.pixiv.net/member_illust.php?mode=medium&illust_id=61705397 Description 给定一个非 ...

  5. Delphi 实现窗体自适应调整尺寸以适应不同屏幕分辩率的显示问题

    给你一段代码,网上转的:unit uMyClassHelpers;//实现窗体自适应调整尺寸以适应不同屏幕分辩率的显示问题.//        陈小斌,2012年3月5日 interface Uses ...

  6. iOS app测试的福音--TestFlight使用说明

    Here's What's New: Invite up to 1,000 external testers using just their email address Easy to use Te ...

  7. DEV MarqueeProgressBarControl控件

    原文地址:http://www.dobug.net/showtopic-672.html MarqueeProgressBarControl是DevExpress的一个进度条控件,该控件和Progre ...

  8. MailKit---如何知道文件夹下有多少封未读邮件

    如果在mailkit中,文件夹已经选中并打开了的话,那直接使用ImapFolder.Unread属性就可以获取到有多少封未读邮件了. 如果文件夹没有打开,那么你还可以使用查询状态的方法来获取未读状态的 ...

  9. android在Service中弹出Dialog对话框,即全局性对话框

    先说具体做法,原因在其后给出: 写好Alter功能块后,在alter.show()语句前加入: alert.getWindow().setType(WindowManager.LayoutParams ...

  10. 粗谈CDN

    CDN:内容分发网络(content delivery network) 1.DNS解析到最快(有可能是地理上最近,也有可能是地理上远但是链路最好)的CDN缓存设备 2.从CDN获取已经缓存的资源 3 ...