如何在使用AngularJS控制器时使用插件进行输入验证
本文关键字:验证 插件 输入 控制器 AngularJS | 更新日期: 2023-09-27 18:25:13
我在构建我的第一个AngularJS+C#web应用程序时遇到了一个小问题。我们这里有一个插件(jQuery),它允许我们从任何输入中调用方法,并且在输入字段上会出现一个小警告。该方法类似
user_email.warning('invalid email');
这对我们来说很简单。user_email
是一个HTML元素(input type='text'
),我想在其中显示气球。
但有了angularJS,我不知道如何才能做到这一点。我从我的控制器呼叫网络服务。Web服务返回"无效的电子邮件/电子邮件正在使用",我需要发送此警告,但在控制器内";我不知道是哪种输入;。很明显,我有正确的字段name
和id
,但是,如果控制器调用这个方法,听起来很奇怪。
我能在概念方面得到帮助吗?这是否是一种好的方法?
大多数dom操作都是通过指令完成的。你可以定义一个自定义指令,我认为这就行了。
//Inside directive
var ddo = { //directive definition object
scope : {
msg : '=message'
},
link : function(scope, el, attrs) {
angular.element(el).warning(scope.msg);
}
}
//In html
<input my-directive message="someVar" />
//In controller
controllerScope.someVar = /* call to your web service */
编辑:添加博客
http://www.codeproject.com/Articles/607873/Extending-HTML-with-AngularJS-Directiveshttp://blog.brunoscopelliti.com/a-directive-to-manage-file-upload-in-an-angularjs-application
它不是博客,而是一些很好的指令实现。有时,看到例子及其工作方式有助于理解http://mgcrea.github.io/angular-strap/