AngularJS 学习笔记(表单校验篇)

本文是AngularJS学习笔记的一部分,专注于表单校验。介绍了如何使用AngularJS的ngModel、ngShow、ngClass等指令进行表单验证,并讨论了自定义指令实现本地验证和触发远端验证的策略。同时,提到了AngularJS 1.2及1.3版本中新增的表单元素和日期类型,以及表单元素验证状态的管理。
摘要由CSDN通过智能技术生成

在新的项目中巧妙地接触到了Google提供的前端MVC框架 AngularJS,它的数据双向绑定真的能够让前端开发者从繁复的DOM操作中解放出来。

在我断断续续的学习AngularJS一个多月后,可以来讲讲我的 AngularJS 学习笔记了,当前首先要讲的是前端必不可少的元素——表单,以下用ng代替AngularJS,本文章适合有一定ng基础的同学。

Demo页面我使用Bootstrap3.2.0作为前端显示框架,同时引入了jQuery1.11.1,AngularJS 为刚刚新发布的1.2.25(使用1.3.0-rc2出现了一个奇怪的BUG,看来还是稳定版稳定),首先来一个大而全的表单页面:

<div class="row" ng-controller="myCtrl">
	<div class="col-sm-6">
		<form name="myForm" autocomplete="off" ng-submit="doSubmit()" novalidate>
			<fieldset>
				<legend>My AngularJS Form</legend>
				<div class="form-group" ng-class="{'has-error':myForm.submitted && myForm.username.$invalid}">
					<label for="username"><code>*</code>用户名称</label>
					<!---->
					<input type="text" class="form-control" name="username" ng-model="formArgs.username" ng-minlength="5" ng-maxlength="30" required>
					<!---->
					<span class="help-block" ng-show="myForm.submitted && myForm.username.$error.required">请输入5-30个字符的用户名称!</span>
					<!---->
					<span class="help-block" ng-show="myForm.submitted && myForm.username.$error.minlength">输入的用户名必须在5至30个字符之间!</span>
					<!---->
					<span class="help-block" ng-show="myForm.submitted && myForm.username.$error.remoted">输入的用户名称已经被使用!</span>
				</div>
				<div class="form-group" ng-class="{'has-error':myForm.submitted && myForm.userEmail.$invalid}">
					<label for="userEmail"><code>*</code>用户邮箱</label>
					<!---->
					<input type="email" class="form-control" name="userEmail" ng-model="formArgs.userEmail" maxlength="30" required>
					<!---->
					<span class="help-block" ng-show="myForm.submitted && myForm.userEmail.$error.required">请输入您常用的电子邮箱!</span>
					<!---->
					<span class="help-block" ng-show="myForm.submitted && myForm.userEmail.$error.email">输入的电子邮箱地址有误!</span>
				</div>
				<div class="form-group" ng-class="{'has-error':myForm.submitted && myForm.password.$invalid}">
					<label for="password"><code>*</code>用户密码</label>
					<!---->
					<input type="password" class="form-control" name="password" ng-model="formArgs.password" ng-minlength="8" ng-maxlength="30" required>
					<!---->
					<span class="help-block" ng-show="myForm.submitted && myForm.password.$error.required">请输入8-30个字符的用户密码!</span>
					<!---->
					<span class="help-block" ng-show="myForm.submitted && myForm.password.$err
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值