初学者 javascript onblur 验证未验证

发布于 2024-12-21 13:01:24 字数 668 浏览 5 评论 0原文

我刚刚学习 javascript 和 jquery,我的验证一定是错误的。我尝试了几种不同的方法,每次第一个警报 (test1) 都会触发 onblur,但一封错误的电子邮件不会引发第二个警报。我考虑过使用 jquery 验证插件,但是在玩了一段时间后,我意识到我需要对每个空白 onblur 进行验证,而不是在处理表单时进行验证,所以我认为我被困在普通的 js 中。

在我的文档准备功能中:

$("#studentEmail").blur(function() {
    alert ("test1");
    function validateEmail(studentEmail){  
        var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;  
        if(!emailReg.test(studentEmail)) {
            alert("Please enter valid email id");
        }
    }
});

在我的 HTML 中:

<input type="text" class="signUpTextbox" id="studentEmail" name="registerStudentEmail">

谢谢!

I am just learning javascript and jquery, and I must be doing my validation wrong. I have tried a few different ways, and each time, the first alert (test1) fires onblur, but a bad email does not bring up the second alert. I thought about using jquery validation plugin, but after playing with in for a while, I realized that I need validation on each blank onblur, not when it is time to process the form, so I think I am stuck with normal js.

In my document ready function:

$("#studentEmail").blur(function() {
    alert ("test1");
    function validateEmail(studentEmail){  
        var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;  
        if(!emailReg.test(studentEmail)) {
            alert("Please enter valid email id");
        }
    }
});

In my HTML:

<input type="text" class="signUpTextbox" id="studentEmail" name="registerStudentEmail">

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

ヤ经典坏疍 2024-12-28 13:01:24

在模糊处理程序内部,您声明了一个函数。在此处理程序外部声明您的函数,并在处理程序内部调用它。

 function validateEmail(studentEmail){  
     var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;  
     if(!emailReg.test(studentEmail)) {  
         alert("Please enter valid email id");
     }       
 }

 $("#studentEmail").blur(function() { 
    alert ("test1");

    validateEmail($(this).val());
});

或者,如果这个函数的重用率为零,你可以这样做:

 $("#studentEmail").blur(function() { 
    alert ("test1");

    var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;  
    if(!emailReg.test($(this).val())) {  
        alert("Please enter valid email id");
    }        
});

Inside of your blur handler you were declaring a function. Declare your function outside of this handler, and call it inside of your handler.

 function validateEmail(studentEmail){  
     var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;  
     if(!emailReg.test(studentEmail)) {  
         alert("Please enter valid email id");
     }       
 }

 $("#studentEmail").blur(function() { 
    alert ("test1");

    validateEmail($(this).val());
});

Or, if this function has zero reuse you could just do this:

 $("#studentEmail").blur(function() { 
    alert ("test1");

    var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;  
    if(!emailReg.test($(this).val())) {  
        alert("Please enter valid email id");
    }        
});
离鸿 2024-12-28 13:01:24

为什么这里有一个内部函数?这应该有效

$("#studentEmail").blur(function() { 
    alert ("test1");

    var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;  
    if(!emailReg.test(studentEmail)) {  
        alert("Please enter valid email id");
    }       

});

Why do you have an inner function here ? This should work

$("#studentEmail").blur(function() { 
    alert ("test1");

    var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;  
    if(!emailReg.test(studentEmail)) {  
        alert("Please enter valid email id");
    }       

});
凯凯我们等你回来 2024-12-28 13:01:24
$("#studentEmail").blur(function() { 
    alert ("test1"); 
    function validateEmail(studentEmail){
        var emailReg = /^([\w-.]+@([\w-]+.)+[\w-]{2,4})?$/;
        if(!emailReg.test(studentEmail)) {
            alert("Please enter valid email id");
        }
    }
    // call the validate method
    validateEmail(this.value);
});
$("#studentEmail").blur(function() { 
    alert ("test1"); 
    function validateEmail(studentEmail){
        var emailReg = /^([\w-.]+@([\w-]+.)+[\w-]{2,4})?$/;
        if(!emailReg.test(studentEmail)) {
            alert("Please enter valid email id");
        }
    }
    // call the validate method
    validateEmail(this.value);
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文