使用AngularJS对表单提交内容进行验证的操作方法

发布时间 - 2026-01-11 02:18:37    点击率:

AngularJS是一款优秀的前端JS框架,已经被用于Google的多款产品当中。它有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等……使用它可以大大减少书写代码的工作量,但和Jquery不同,使用AngularJS有一定的难度,因此今天我将介绍以下怎样使用AngularJS来对表单的提交内容进行验证。

AngularJS对表单中常用的验证操作

$dirty 表单有填写记录
$valid 字段内容合法的
$invalid 字段内容是非法的
$pristine 表单没有填写记录
$error 表单验证不通过的错误信息

1.相关插件的导入:AngularJS和Jquery一样,是一种由程序员用js编写好然后封装起来的js插件,因此在使用之前要用以下代码来导入它。

 <script src="libs/angular.js"></script> 

注:该js插件最好放在body之后,自己写的js代码则放在AngularJS之后防止产生错误。

2.在导入完AngularJS插件之后,我们首先要在body中创建一个form表单,用于接下来的操作,然后在表单上或者body上加上ng-app=""属性来确定AngularJS的作用域,一般

推荐加在body上。

 <body ng-app="app" ng-controller="ctrl"></body> 

注:ng-controller="ctrl"用于设置控制器。

3.给form表单和input的name属性命名,给form及input设置name后会将form表单信息默认绑定到$scope作用域中,故可以使用formName.inputName.$验证操作 得到验证结果。

<form class="form-horizontal" name="myForm" novalidate>
  <input type="text" name="name" >
  <input type="email" name="mail">
  <input type="password" name="pwd" >
</form>

novalidata用于禁止h5自带的表单验证,防止多余影响。

例如:

myForm.text.$dirty="true";表单被填写过
myForm.text.$invalid"true";表单输入不合法
myForm.text.$error.required="true";表单必填但未填。

4.给input加上对应的验证:

<input type="text" name="name" ng-minlength="4" ng-maxlength="10" required ng-class="{erro:myForm.name.$invalid&&myForm.name.$dirty}"/>
<input type="email" name="mail" required />
<input type="password" name="pwd" ng-model="user.pwd" pattern="^\w{6,18}$"/>

注:

以上代码对text设置了最小长度4,最大长度10,必填的验证信息,

对email则使用了email自带验证,增加了必填要求,

对password则是设置了正则验证要求是6到18位的字母数字下划线。

5.给提交按钮加上ng-disabled="myForm.$dirty&&myForm.$invalid"属性在表单输入不合法时将按钮禁用来阻止表单内容提交。

注:myForm.$dirty&&myForm.$invalid表示在表单有输入的情况下输入错误。

以上步骤完成之后表单的验证就完成了,也可以加上span的ng-show="myForm.name.$invalid&&myForm.name.$dirty"属性来设置在不同错误时出现不同的提示信息,这样,一个可以验证是否提交的表单就完成了。

以上所述是小编给大家介绍的使用AngularJS对表单提交内容进行验证的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# angularjs  # 表单提交验证  # JSP之表单提交get和post的区别详解及实例  # 基于JavaScript实现带数据验证和复选框的表单提交  # JavaScript阻止表单提交方法(附代码)  # Nodejs之http的表单提交  # JS表单提交中onsubmit事件return的作用详解  # 表单  # 必填  # 放在  # 自带  # 绑定  # 小编  # 不合法  # 的是  # 完成了  # 是一种  # 在此  # 则是  # 下划线  # 有一定  # 要在  # 提示信息  # 给大家  # 要用  # 我将  # 它可以 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】  青岛网站建设如何选择本地服务器?  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  Laravel如何编写单元测试和功能测试?(PHPUnit示例)  Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理  奇安信“盘古石”团队突破 iOS 26.1 提权  Laravel模型事件有哪些_Laravel Model Event生命周期详解  如何用低价快速搭建高质量网站?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  如何用y主机助手快速搭建网站?  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  如何在万网自助建站平台快速创建网站?  Windows Hello人脸识别突然无法使用  如何在七牛云存储上搭建网站并设置自定义域名?  香港网站服务器数量如何影响SEO优化效果?  三星网站视频制作教程下载,三星w23网页如何全屏?  laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法  网站制作报价单模板图片,小松挖机官方网站报价?  如何做网站制作流程,*游戏网站怎么搭建?  如何构建满足综合性能需求的优质建站方案?  Python正则表达式进阶教程_复杂匹配与分组替换解析  中山网站制作网页,中山新生登记系统登记流程?  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】  如何快速搭建高效简练网站?  如何为不同团队 ID 动态生成多个独立按钮  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  黑客如何利用漏洞与弱口令入侵网站服务器?  JS中对数组元素进行增删改移的方法总结  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  如何确保西部建站助手FTP传输的安全性?  Python企业级消息系统教程_KafkaRabbitMQ高并发应用  怎么用AI帮你为初创公司进行市场定位分析?  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  桂林网站制作公司有哪些,桂林马拉松怎么报名?  如何在阿里云通过域名搭建网站?  网易LOFTER官网链接 老福特网页版登录地址  简历在线制作网站免费版,如何创建个人简历?  如何快速上传建站程序避免常见错误?  Laravel API资源类怎么用_Laravel API Resource数据转换  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  公司门户网站制作流程,华为官网怎么做?  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  教学论文网站制作软件有哪些,写论文用什么软件 ?  如何在宝塔面板中修改默认建站目录?  js实现点击每个li节点,都弹出其文本值及修改  如何快速搭建高效WAP手机网站吸引移动用户?  JavaScript中如何操作剪贴板_ClipboardAPI怎么用