【问题标题】:finding a letter in a string with jquery用jquery在字符串中查找一个字母
【发布时间】:2011-01-30 14:55:17
【问题描述】:

它看起来很基本,但我想不通。

var email = $("input#email").val();

如何检查 email 变量是否有 @ 字母?

谢谢

【问题讨论】:

    标签: jquery


    【解决方案1】:

    或者代替正则表达式,使用正确的工具:indexOf()

    var hasAtCharacter = (email.indexOf('@') != -1);
    

    【讨论】:

    • 关于这个问题是正确的,但验证电子邮件地址的方法非常糟糕——@@@@@@@@@@ 不是有效的电子邮件地址。
    【解决方案2】:

    使用 string.match() 方法检查它是否匹配包含@的正则表达式。不过,您可能希望使用更好的表达式来验证它是一个电子邮件地址。

    var email = $("input#email").val();
    var isEmail = email.match( /@/ );
    

    或者你可以使用正则表达式和测试方法。

     var email = $('input#email').val();
     var re = new RegExp( '^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$' );
     if (re.test(email)) {
        ...
     }
    

    注意 - 我不知道该正则表达式是否是您需要的,您可能需要对电子邮件验证器进行一些研究,看看这是否足够或者您想要改进它。

    或者,您可以考虑使用 jQuery validation 插件。它的验证方法包括电子邮件地址。

    【讨论】:

    猜你喜欢
    • 2018-10-03
    • 2018-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多