Angularjs基础(七)
AngularJS表单
AngularJS表单时输入控件的集合
HTML控件
一下HTML input 元素被称为HTML 控件:
input 元素
select元素
button元素
textarea元素
HTML 表单
AngularjS表单上实例
<div ng-app="myApp" ng-controller="formCtrl">
<from novalidate>
First Name:
<input type="text" ng-model="user.firstName">
Last Name:
<input type="text" ng-model="user.lastName">
<button ng-click="reset()">RESET</button>
</from>
<p>form = {{user}}</p>
<p>master = {{master}}</p>
</div>
<sctipt>
var app = angular.module('myApp'm[]);
app.controller('formCtrl',function($scope){
$scope.master = {firstName:"John",lastName:"Doe"};
$scope.reset = function(){
$scope.user = angular.copy($scope.master);
};
$scope.reset();
})
novalidate 属性是在 HTML5 中新增的。禁用了使用浏览器的默认验证。
</sctipt>
实例解析
ng-app 指令定义了AngularJS 应用。
ng-controller指令定义了应用控制器。
ng-model 指令绑定了两个inputh 元素到模型的user 对象。
formCtrl 函数设置了mater 对象的初始值,并定义了reset()方法。
reset() 方法设置了user 对象等于master对象。
ng-click 指令调用了reset()方法,且在点击按钮时调用。
novalidate 属性在应用中不是必须的,但是你需要在 AngularJS 表单中使用,用于重写标准的 HTML5 验证。
AngularJS输入验证
AngularJS表单和控件可以验证输入的数据。
输入验证
AngularJS表单和控件可以提供验证功能,并对用户输入的非法数据惊醒警告。
应用代码
<form ng-app="myApp" ng-controller="validateCtrl" name="myForm" novalidate>
<p>用户名:</p>
<input type="text" name="user" ng-model="user" required>
<span style="color:red" ng-show="myForm.user.$dirty && myForm.user.$invalid">
<span ng-show="myForm.user.$error.required">用户名是必须的。</span>
<p>
<input type="subimt" ng-disabled="myForm.user.$dirty && myForm.user.$invalid ||
myForm.email.$dirty && myForm.eail.$invalid">
</p>
</form>
<sctrpt>
var app = angular.module('myApp',[]);
app.controller('validateCtrl',function($scope){
$scope. user = 'John Doe';
$scope.email = 'john.doe@gmail.com';
})
</script>
实例解析
AngularJS ng-model 指令用于绑定输入元素到模型中。
模型对象有两个属性: user 和email
我们使用了ng-show指令,color:red 在邮件是$dirty 或$invalid才显示
属性:
$dirty 表单有填写记录
$valid 字段内容合法的
$invalid 字段内容是非法的
$pristine 表单没有填写记录
AngularJS API
AngularJS 全局API
AngularJS 全局API 用于执行常见任务的JavaScript 函数集合,
比较对象
迭代对象
转换对象
全局 API 函数使用 angular 对象进行访问。
以下列出了一些通用的 API 函数:
angular.lowercase() 转换字符床为小写
angular.uppercase() 转换字符串为大写
angular.isString() 判断给定的对象是否为字符串,如果是返回true.
angular.isNumber() 判断给定对象是否为数字,如果是返回true
angular.lowercase()
<div ng-app="myApp" ng-controller="myCtrl">
<p>{{x1}}</p>
<p>{{x2}}</p>
</div>
<script>
var app = angular.module('myApp',[]);
app.controller('myCtrl',function($scope){
$scope.x1 = “JOHN”;
$scope.x2 =angular.lowercase($scope.x1)
});
</script>
angular.uppercase()
<div ng-app="myApp" ng-controller="myCtrl">
<p>{{x1}}</p>
<p>{{x2}}</p>
</div>
<script>
var app = angular.module('myApp',[]);
app.controller('myCtrl',function($scope){
$scope.x1 ="John";
$scope.x2 = angular.uppercase($scope.x1);
})
</script>
angular.isString()
<div ng-app="myApp" ng-controller="myCtrl">
<p>{{x1}}</p>
<p>{{x2}}</p>
</div>
<script>
var app = angular.module('myApp',[]);
app.controller('myCtrl',function($scope){
$scope.x1 = "JSON";
$scope.x2 = angular.isString($scope.x1);
});
</script>
angular.isNumber()
<div ng-app="myApp" ng-controller="myCtrl">
<p>{{x1}}</p>
<p>{{x2}}</p>
</div>
<script>
var app = angular.module('myApp',[]);
app.controller('myCtrl',function($scope){
$scope.x1 = "JOHN"l
$scope.x2 = angular.isNumber($scope.x1);
});
</script>
Angularjs基础(七)的更多相关文章
- AngularJS基础入门初探
一.AngularJS简介 1.1 什么是AngularJS (1)一款非常优秀的前端JS框架,可以方便实现MVC/MVVM模式 (2)由Misko Hevery 等人创建,2009年被Google所 ...
- Bootstrap <基础七>按钮
任何带有 class .btn 的元素都会继承圆角灰色按钮的默认外观.但是 Bootstrap 提供了一些选项来定义按钮的样式,具体如下表所示: 以下样式可用于<a>, <butto ...
- C#_02.16_基础七_.NET表达式&运算符
C#_02.16_基础七_.NET表达式&运算符 一.字面量: 字面量和变量的关系来理解字面量会比较简单: 因此字面量是源代码中键入已知的(我们知道它是多少的)值.也可以理解是等号右边的非创建 ...
- {Django基础七之Ajax} 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解)
Django基础七之Ajax 本节目录 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解) 一 Ajax简介 ...
- Java基础七-正则表达式
Java基础七-正则表达式 一.定义: 特定的符号的组合 二.作用: 用于操作字符串数据 三.优缺点 简化代码,但是阅读性差 四.引入 4.1 问题 判断一个号码是否是QQ号? 不是零开头 6-15位 ...
- day 72 Django基础七之Ajax
Django基础七之Ajax 本节目录 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解) 六 同源策略与 ...
- day 60 Django基础七之Ajax
Django基础七之Ajax 本节目录 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解) 六 同源策 ...
- {Django基础七之Ajax} 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解)
{Django基础七之Ajax} 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解) Django基础七之 ...
- Django基础七之CBV装饰器和中间件
Django基础七之CBV装饰器和中间件 目录 Django基础七之CBV装饰器和中间件 1. CBV加装饰器 2. Django中间件 2.1 Django中间件介绍 2.2 自定义中间件 2.2. ...
随机推荐
- 【Q】类和对象:游戏角色开发(角色介绍)
案例情景:某公司要开发新游戏,请用面向对象的思想设计英雄类.怪物类和武器类. 编写测试类,创建英雄对象.怪物对象和武器对象,并输出各自的信息. 其中设定分别如下: 1.英雄类 属性:英雄名字.生命值. ...
- js之变量介绍
变量提升 JavaScript的函数定义有个特点,它会先扫描整个函数体的语句,把所有申明的变量“提升”到函数顶部: 'use strict'; function foo() { var x = 'He ...
- Java web service 异常
1.org/apache/commons/discovery/tools/DiscoverSingleton Exception in thread "main" java.lan ...
- vue.js练习经验总结
1.最好JSON数据与(模板里 v-bind里绑定的自定义属性不要重名),根据console控制台的提示来看,应该是重名所引起的编译错误 2.还有个很奇怪的问题,局部注册vue的过滤器,到了模板之后不 ...
- android自定义控件——以滑动开关为例
0.引言 (1)Android从4.0开始提供了switch的滑动开关效果组件,但是之前版本却没有 (2)很多时候我们写程序,都希望把有用的通用的通用的东西封装起来,以便以后重用. 本文根据组件开发思 ...
- 《ArcGIS Runtime SDK for Android开发笔记》——(15)、要素绘制Drawtools3.0工具DEMO
1.前言 移动GIS项目开发中点线面的要素绘制及编辑是最常用的操作,在ArcGIS Runtime SDK for iOS 自带AGSSketchLayer类可以帮助用户快速实现要素的绘制,图形编辑. ...
- qt打开url
QDesktopServices::openUrl(QUrl(QLatin1String(“http://blog.const.net.cn“)))
- 成功解决:FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is
问题原因: 包内出错,是h5py包 解决思路: 执行如下操作: pip -- install h5py==2.8.0rc1 注意:如果执行pip install h5py==2.8.0rc1 成功话, ...
- java--final 类在程序中的影响
很多时候我都记不住也弄不太清楚final类在程序的中的作用到底为何,今天正好看到了,就把它记下来,省的以后忘了的时候到处找资料~ final修饰符对程序的影响总的来说有三点: (1)final可以修饰 ...
- linux下修改apt下载源
很多时候使用apt install命令会出现Unable to fetch somearchives的错误,我们需要运行以下apt update,可是经常会出现下载速度很慢的情况 这里就记一下将apt ...