如何对输入标记调用验证函数
How to call a validation function on input tag
我正在学习angularjs。在这里,我在验证中遇到了一个问题。
我有一个文本框,它接受邮政编码的输入,并在验证后返回一个真正的假值。
我已经在控制器内部定义了函数,但不知道如何在文本框上调用它
<input type="text" placeholder="Postcode" ng-model="myprofile.postCode" >
.controller("MyProfileCtrl", function ($scope, $rootScope) {
$scope.myprofile = {};
$scope.myprofile.postCode = "";
$scope.checkPostCodeError = function(){
var newPostCode = checkPostCode ($scope.myprofile.postCode); // calling a javascript function
if (newPostCode) {
$scope.myprofile.postCode = newPostCode;
return true;
}
else return false;
}
checkPostCode
函数具有不同的正则表达式模式,它会检查数学是否返回真或假。
如何实现验证。
最简单的方法是将validate
函数绑定到input
的事件,例如:
<input ng-change='checkPostCodeError' or ng-keyup='checkPostCodeError' />
此外,您可以使用$watch
来观看myprofile.postCode
。
但是,表单控件是专门以角度处理的。这意味着angular有许多内置的验证函数/指令。您可以创建自己的验证指令。
这是一个演示:
app.directive('postCodeValidation', function () {
function checkPostCodeError(postCode) {
if(/*your check logic*/) {
return true;
} else {
return false;
}
}
return {
require: 'ngModel',
link: function (scope, elem, attrs, ctrl) {
ctrl.$parsers.unshift(function (viewValue) {
if (checkPostCodeError(viewValue)) {
// it is valid
ctrl.$setValidity('postCode', true);
return viewValue;
} else {
// it is invalid, return undefined (no model update)
ctrl.$setValidity('postCode', false);
return undefined;
}
});
}
};
});
// how to use in template
<form>
<input type="text" placeholder="Postcode" ng-model="myprofile.postCode" name="postCode" post-code-validation/><br /><span ng-show="form.postCode.$error.postCode">This is not valid postCode!</span>
</form>
相关文章:
- 同步调用,直到用户通过angular验证为访问者
- 使用对服务器的Ajax调用验证表单字段—Learning Ajax
- javascript验证和ajax调用同时不起作用
- Passport.js成功的身份验证根本没有调用
- 如何验证我对StockTwits API的调用
- 如何使用javascript验证表单中的数据,然后调用php页面
- 概念验证模型控制器调用正确的实例
- 如果($_SERVER[“REQUEST_METHOD”]=“POST”)条件在ajax调用不同的php文件进行验证和提
- TinyMCE验证给出错误:无法调用方法'getContent'的未定义
- 使用 Ajax 调用进行验证不起作用
- jQuery 验证 - 调用某些元素的 .valid() 方法不会清除错误
- 按照承诺,通过与chai的函数调用验证已解析承诺的内容
- 通过 ajax 函数调用验证
- 如何对输入标记调用验证函数
- 在Rails助手中使用Javascript调用验证文本字段时,如何返回最后一个有效输入
- 当有DB调用时,调用验证Jscript函数的正确方法是什么?
- CouchDB调用验证文档中的更新处理程序
- 如何在php-ajax调用验证成功后关闭javascript弹出框
- HTML 如何调用验证例程
- Angular js的验证函数在api调用验证完成之前返回