基于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 相关文章推荐
JavaScript调用Activex控件的事件的实现方法
Apr 11 Javascript
javascript中的void运算符语法及使用介绍
Mar 10 Javascript
JQuery设置和去除disabled属性的5种方法总结
May 16 Javascript
js 调用百度地图api并在地图上进行打点添加标注
May 13 Javascript
学习JavaScript设计模式之单例模式
Jan 19 Javascript
微信小程序实现滑动删除效果
May 19 Javascript
Vue 组件间的样式冲突污染
Aug 31 Javascript
微信小程序swiper组件用法实例分析【附源码下载】
Dec 07 Javascript
详解Vue中使用Axios拦截器
Apr 22 Javascript
angular组件间通讯的实现方法示例
May 07 Javascript
详解javascript void(0)
Jul 13 Javascript
JS JQuery获取data-*属性值方法解析
Sep 01 jQuery
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与ASP
2006/10/09 PHP
分享下PHP register_globals 值为on与off的理解
2013/09/26 PHP
php不使用插件导出excel的简单方法
2014/03/04 PHP
使用 PHPStorm 开发 Laravel
2015/03/24 PHP
PHP下载远程图片并保存到本地方法总结
2016/01/22 PHP
PHP连接MYSQL数据库的3种常用方法
2017/02/27 PHP
简单的js分页脚本
2009/05/21 Javascript
EasyUi tabs的高度与宽度根据IE窗口的变化自适应代码
2010/10/26 Javascript
javascript的数据类型、字面量、变量介绍
2012/05/23 Javascript
解析Jquery取得iframe中元素的几种方法
2013/07/04 Javascript
Node.js node-schedule定时任务隔多少分钟执行一次的方法
2015/02/10 Javascript
JavaScript使用function定义对象并调用的方法
2015/03/23 Javascript
Bootstrap基本组件学习笔记之缩略图(13)
2016/12/08 Javascript
AngularJS之页面跳转Route实例代码
2017/03/10 Javascript
javascript实现的图片预览功能
2017/03/25 Javascript
JavaScript实现的浏览器下载文件的方法
2017/08/09 Javascript
二维码图片生成器QRCode.js简单介绍
2017/08/18 Javascript
jQuery EasyUI window窗口使用实例代码
2017/12/25 jQuery
基于vue-ssr服务端渲染入门详解
2018/01/08 Javascript
React从react-router路由上做登陆验证控制的方法
2018/05/10 Javascript
JS模拟浏览器实现全局搜索功能
2019/09/11 Javascript
Vue打包后访问静态资源路径问题
2019/11/08 Javascript
[01:19:46]EG vs Secret 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
Python  连接字符串(join %)
2008/09/06 Python
Python运行报错UnicodeDecodeError的解决方法
2016/06/07 Python
Python3安装Scrapy的方法步骤
2017/11/23 Python
Python hashlib模块用法实例分析
2018/06/12 Python
widows下安装pycurl并利用pycurl请求https地址的方法
2018/10/15 Python
Django调用百度AI接口实现人脸注册登录代码实例
2020/04/23 Python
高级运动鞋:GREATS
2019/07/19 全球购物
英文求职信写作小建议
2014/02/16 职场文书
《高尔基和他的儿子》教学反思
2014/04/09 职场文书
出国英文推荐信
2014/05/10 职场文书
Python 详解通过Scrapy框架实现爬取CSDN全站热榜标题热词流程
2021/11/11 Python
Nginx虚拟主机的配置步骤过程全解
2022/03/31 Servers
SQL Server使用导出向导功能
2022/04/08 SQL Server