【问题标题】:Detect any attempt to insert an email address or phone number检测任何插入电子邮件地址或电话号码的尝试
【发布时间】:2012-03-12 18:18:12
【问题描述】:

如何从输入框中检测到任何插入电子邮件地址或电话号码的尝试。 这是主要场景:我们有一些输入,用户应该只写他们的用途,例如名称、街道或特征。

在用户提交他发送的所有数据中没有:电子邮件/电话号码后,我如何检测/验证。考虑到我还必须消除这种尝试: 域点 com 的电子邮件,电子邮件@ [空格] 点 [空格] com 等等。

有没有我们可以使用的插件和工具?你对此有什么想法吗?让我们来测试一下。

我们正在构建一个 Web 应用程序。 (主要是php/javascript)

【问题讨论】:

    标签: javascript php jquery regex


    【解决方案1】:

    如果您正在搜索 jQuery 验证插件,这里有很多。

    例如http://bassistance.de/jquery-plugins/jquery-plugin-validation/ 或在 Google 上搜索“jquery 验证插件”

    提交后还要用 php 验证您的输入服务器端,因为可以在浏览器中禁用 Javascript。

    那里也有很多教程(例如http://myphpform.com),或者搜索SO。

    【讨论】:

    • 这就是我们不尝试验证正确的电子邮件输入的问题,我们想要的不仅仅是这些。我们希望捕获任何插入电子邮件的尝试,即使是这种形式:域 .com 上的 emailName。如果有任何尝试这样做,我们希望捕获它并启动错误。
    • 您可以为此使用正则表达式。在我发布的教程中,您可以看到示例。如果您搜索正则表达式教程,您还会发现它们的负载,例如php-regex.blogspot.comphpro.org/tutorials/Introduction-to-PHP-Regex.html。您还可以在 Javascript 中使用正则表达式。
    • 所以我们应该专注于正则表达式来实现我们的目标,正如@NaveenKumar 所建议的那样。
    • 是的,使用正则表达式,您将能够实现这一点。我建议你通读一些教程,因为理解它们很好:)
    • 当然,我现在只是在玩正则表达式 :) 再次感谢,我希望有更好的方法来解决这个问题,但是我来了正则表达式
    【解决方案2】:

    HTML

    <input type="text" id="lname" name="lname" />
    <input type="submit" value="Submit" name="submit" onclick="return validate();"/>
    

    在 Javascript 中

    function validate()
    {
             var regex =  /^[a-zA-Z_]+$/;
             var lname = document.getElementById('lname').value;
             if (regex.test(lname)) {
                 return true;
             } else {
                 return false;                    
             }
    
    }
    

    您可以编辑 regex 以适合您的标准

    【讨论】:

      【解决方案3】:

      使用 jQuery 插件进行验证 - 然后使用正则表达式(或一些已经内置的函数)来验证输入...

      我使用Position Absolute validator for jQuery

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-01-27
        • 1970-01-01
        • 2018-06-11
        • 2013-02-11
        • 1970-01-01
        相关资源
        最近更新 更多