您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息

AngularJS自动表单验证_AngularJS

2024/4/25 9:28:05发布5次查看
angularjs的另外一种表单验证方式是自动验证,即通过directive来实现,除了angularjs自带的directive,还需要用到angular-auto-validate这个第三方module。
有关angular-auto-validate:
安装:npm i angular-auto-validate 引用: module依赖:var myapp = angular.module(app, [jcs-autovalidate]);为了实现错误信息本地化,还需要angular-localize这个第三方module:
安装:npm install angular-localize --save module依赖:var myapp = angular.module(app, [localize]); 引用:
此外,当点击提交表单按钮,需要禁用按钮并显示一种等待效果,需要用到angular-ladda这个第三方module:
安装:bower install angular-ladda --save module依赖:var myapp = angular.module(app, [angular-ladda]); 引用:

页面如下:
form validating auto
name
email
username
age
sex please choose mail femail
password
正在注册... 注册
{{formmodel | json}}
先看提交按钮:
正在注册... 注册

ladda属性值为bool值,true表示显示动态等待效果,false不显示动态等待效果,这里的submitting是scope中的一个属性 data-style=expand-right表示在按钮的右侧显示动态等待效果再拿表单中的age字段来说:
age

其中,min, max为agularjs的directive,而ng-min-err-type是angular-auto-validate的directive。这里遵循的惯例是ng-angularjs表单验证的directive名称-err-type,而tooyoung和tooold的作用是什么,又是在哪里用上了呢?
是在module层面用上了,定义在了form_validation_auto.js文件中。
var myapp1 = angular.module('myapp1',['jcs-autovalidate','localize','angular-ladda']);myapp1.run(function(defaulterrormessageresolver){ defaulterrormessageresolver.geterrormessages().then(function(errormessages){ errormessages['tooyoung'] = '年龄必须小于{0}'; errormessages['tooold'] = '年龄不能大于{0}'; errormessages['badusername'] = '用户名只能包含数字、字母或下划线'; });});myapp1.controller('myctrl1', function($scope, $http){ $scope.formmodel = {}; $scope.submitting = false; $scope.onsubmit = function(){ $scope.submitting = true; console.log('已提交'); console.log($scope.formmodel); $http.post('url',$scope.formmodel) .success(function(data){ console.log(':)'); $scope.submitting = false; }) .error(function(data){ console.log(':('); $scope.submitting = false; }); };});
以上就是本文的全部内容,希望对angularjs手动表单验证能够熟练操作。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录