基于AngularJS实现表单验证功能


Posted in Javascript onJuly 28, 2017

本文实例为大家分享了AngularJS实现表单验证功能的具体代码,供大家参考,具体内容如下

<!--实例解析

ng-app 指令定义了 AngularJS 应用。

ng-controller 指令定义了应用控制器。

ng-model 指令绑定了两个 input 元素到模型的 user 对象。

formCtrl 函数设置了 master 对象的初始值,并定义了 reset() 方法。

reset() 方法设置了 user 对象等于 master 对象。

ng-click 指令调用了 reset() 方法,且在点击按钮时调用。

novalidate 属性在应用中不是必须的,但是你需要在 AngularJS 表单中使用,用于重写标准的 HTML5 验证。 -->
<!DOCTYPE html>
<html ng-app="myApp">
<head>
<meta charset="utf-8">
<script src="js/angular.js"></script>
</head>
<body>
<!-- Checkbox(单选框)
我们可以使用 ng-model 来绑定单选按钮到你的应用中。
单选框使用同一个 ng-model ,可以有不同的值,但只有被选中的单选按钮的值会被使用
-->
<form>
 选择一个选项:
 <input type="radio" ng-model="myVar" value="dogs">Dogs
 <input type="radio" ng-model="myVar" value="tuts">Tutorials
 <input type="radio" ng-model="myVar" value="cars">Cars
</form>
<div ng-switch="myVar">
 <div ng-switch-when="dogs">
   <h1>Dogs</h1>
   <p>Welcome to a world of dogs.</p>
 </div>
 <div ng-switch-when="tuts">
   <h1>Tutorials</h1>
   <p>Learn from examples.</p>
 </div>
 <div ng-switch-when="cars">
   <h1>Cars</h1>
   <p>Read about cars.</p>
 </div>
</div>
<p>ng-switch 指令根据单选按钮的选择结果显示或隐藏 HTML 区域。</p><br><br><br><br>

<!-- 下拉菜单
使用 ng-model 指令可以将下拉菜单绑定到你的应用中。
ng-model 属性的值为你在下拉菜单选中的选项
-->
<form>
 选择一个选项:
 <select ng-model="myVar2">
  <option value="">
  <option value="dogs">Dogs
  <option value="tuts">Tutorials
  <option value="cars">Cars
 </select>
</form>
<div ng-switch="myVar2">
 <div ng-switch-when="dogs">
   <h1>Dogs</h1>
   <p>Welcome to a world of dogs.</p>
 </div>
 <div ng-switch-when="tuts">
   <h1>Tutorials</h1>
   <p>Learn from examples.</p>
 </div>
 <div ng-switch-when="cars">
   <h1>Cars</h1>
   <p>Read about cars.</p>
 </div>
</div>
<p>ng-switch 指令根据下拉菜单的选择结果显示或隐藏 HTML 区域。</p><br><br><br><br>

<!-- novalidate-->
<form action="xxx.do" novalidate>
E-mail: <input type="email" name="user_email">
<input type="submit">
</form>
<p><strong>注意:</strong>在 Safari 和 Internet Explorer 9 及之前的版本中不支持 novalidate 属性。这个属性可以关闭浏览器默认校验</p><br><br><br><br>


<!--Checkbox(复选框)
checkbox 的值为 true 或 false,可以使用 ng-model 指令绑定,它的值可以用于应用中-->
<div ng-app="">
 <form>
  选中复选框,显示标题:
  <input type="checkbox" ng-model="myVar">
 </form>
 <h1 ng-show="myVar">My Header</h1>
</div>
<p>标题使用了 ng-show 指令,复选框选中后显示 h1 标签内容。</p><br><br><br><br>

<!-- HTML 表单
HTML 表单通常与 HTML 控件同时存在
以下 HTML input 元素被称为 HTML 控件:

  input 元素
  select 元素
  button 元素
  textarea 元素
-->
<div ng-app="myApp" ng-controller="formCtrl">
 <form novalidate>
  First Name:<br>
  <input type="text" ng-model="user.firstName"><br>
  Last Name:<br>
  <input type="text" ng-model="user.lastName">
  <br><br>
  <button ng-click="reset()">RESET</button>
 </form>
 <p>form = {{user}}</p>
 <p>master = {{master}}</p>
</div>

<script>

var app = angular.module('myApp', []);
app.controller('formCtrl', function($scope) {
  $scope.master = {firstName: "John", lastName: "Doe"};
  $scope.reset = function() {

    $scope.user = angular.copy($scope.master);

  };
  $scope.reset();
});

</script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery写个checkbox——类似邮箱全选功能
Mar 19 Javascript
图片轮换效果实现代码(点击按钮停止执行)
Apr 12 Javascript
JavaScript Length 属性的总结
Nov 02 Javascript
JS实现复制内容到剪贴板功能兼容所有浏览器(推荐)
Jun 17 Javascript
JS表单数据验证的正则表达式(常用)
Feb 18 Javascript
Angular中ng-options下拉数据默认值的设定方法
Jun 21 Javascript
JavaScript 中使用 Generator的方法
Dec 29 Javascript
对vue2.0中.vue文件页面跳转之.$router.push的用法详解
Aug 24 Javascript
vue-cli 3.x 修改dist路径的方法
Sep 19 Javascript
小程序显示弹窗时禁止下层的内容滚动实现方法
Mar 20 Javascript
vue中利用iscroll.js解决pc端滚动问题
Feb 15 Javascript
Vue3 Composition API的使用简介
Mar 29 Vue.js
AngularJS service之select下拉菜单效果
Jul 28 #Javascript
解决Vue2.0自带浏览器里无法打开的原因(兼容处理)
Jul 28 #Javascript
bootstrap datepicker插件默认英文修改为中文
Jul 28 #Javascript
基于BootStrap multiselect.js实现的下拉框联动效果
Jul 28 #Javascript
基于JS实现移动端左滑删除功能
Jul 28 #Javascript
Vue2.0 多 Tab切换组件的封装实例
Jul 28 #Javascript
webpack实现热更新(实施同步刷新)
Jul 28 #Javascript
You might like
坏狼php学习 计数器实例代码
2008/06/15 PHP
php知道与问问的采集插件代码
2010/10/12 PHP
通过curl模拟post和get方式提交的表单类
2014/04/23 PHP
php中base_convert()进制数字转换函数实例
2014/11/20 PHP
PHP mysql事务问题实例分析
2016/01/18 PHP
Laravel学习基础之migrate的使用教程
2017/10/11 PHP
PHP快速导出百万级数据到CSV或者EXCEL文件
2020/11/27 PHP
javascript String 的扩展方法集合
2008/06/01 Javascript
autoIMG 基于jquery的图片自适应插件代码
2011/03/12 Javascript
javascript图片相似度算法实现 js实现直方图和向量算法
2014/01/14 Javascript
jQuery DOM插入节点操作指南
2015/03/03 Javascript
Js实现无刷新删除内容
2015/04/29 Javascript
用JS动态改变表单form里的action值属性的两种方法
2016/05/25 Javascript
使用smartupload组件实现jsp+jdbc上传下载文件实例解析
2017/01/05 Javascript
利用webstrom调试Vue.js单页面程序的方法教程
2017/06/06 Javascript
jquery实现限制textarea输入字数的方法
2017/09/06 jQuery
详解如何配置vue-cli3.0的vue.config.js
2018/08/23 Javascript
angularJs中ng-model-options设置数据同步的方法
2018/09/30 Javascript
Layui选项卡制作历史浏览记录的方法
2019/09/28 Javascript
[33:09]完美世界DOTA2联赛循环赛 Forest vs DM BO2第二场 10.29
2020/10/29 DOTA
Python发送email的3种方法
2015/04/28 Python
tornado 多进程模式解析
2018/01/15 Python
YUV转为jpg图像的实现
2019/12/09 Python
Python用5行代码实现批量抠图的示例代码
2020/04/14 Python
Python基于os.environ从windows获取环境变量
2020/06/09 Python
Python Django搭建网站流程图解
2020/06/13 Python
Python发送邮件实现基础解析
2020/08/14 Python
使用python把xmind转换成excel测试用例的实现代码
2020/10/12 Python
天游软件面试
2013/11/23 面试题
编程用JAVA解析XML的方式
2013/07/07 面试题
五好党支部事迹材料
2014/02/06 职场文书
银行求职信怎么写
2014/05/26 职场文书
合同意向书范本
2014/07/30 职场文书
酒店财务部岗位职责
2015/04/14 职场文书
MySQL 分区表中分区键为什么必须是主键的一部分
2022/03/17 MySQL
草系十大最强宝可梦,纸片人上榜,榜首大家最熟悉
2022/03/18 日漫