永发信息网

使用angularjs编写一个验证邮箱地址是否正确的程序

答案:2  悬赏:0  手机版
解决时间 2021-02-27 02:01
  • 提问者网友:捧腹剧
  • 2021-02-26 21:48
使用angularjs编写一个验证邮箱地址是否正确的程序
最佳答案
  • 五星知识达人网友:荒野風
  • 2021-02-26 22:17
这是 Angular.JS 几乎电子邮件检查元素代码是好的但这有一个问题。 当我填写电子邮件检查元素时,它将重置 !

我写这篇文章到电子邮件检查元素的示例。

"test@test.com"

但这重置 !当我写 '.' <-点。

"test@test"<-好的

"test@test"。 <-重置输入。当我写 '.' <-

发生问题的原因吗?

Javascript

<script>
angular.module('test', [])
.controller('MyController', ['$scope', '$window', function($scope, $window) {
$scope.sendMessage=function(toSb){
alert(toSb);
};

}])
.directive('emailInput', function($compile) {
return {
restrict: 'C',
template: '{{emailtext}}',
link: function(scope, elem, attrs){
scope.name="emailAddress";

var input = elem.find("input")[0];
input.name = "emailAddress";
$compile(input)(scope);

}
};
});
</script>
HTML


解决方法 1:

你需要使你的指令与替换选项和名称属性得到指令元素 (基本上做不重新编译一次输入)。它是展示古怪行为时,你有你的指令编译,它将重置 (未定义) 解析后的 modelValue 但以某种方式在这种情况下,它将 viewvalue 以及重置角验证。你可以看到它并不会发生是否您使用的输入的类型直接,看来像是编译模板导致了此问题。

.directive('emailInput', function ($compile) {
return {
restrict: 'C',
replace:true,
template: '',
link: function (scope, elem, attrs) {

}
};



Plnkr
全部回答
  • 1楼网友:街头电车
  • 2021-02-26 23:10
<script> function foreach() { var temp = document.getelementbyid("email").value; var str=""; if(temp!="" && temp.indexof(";")>0) { var arremail=temp.split(";"); for(var i=0;i
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯