限制输入一些个人信息

时间:2014-04-11 20:24:10

标签: javascript php jquery

我想查看用户在Textarea中输入的内容。

实际上,如何在说明框中限制输入电话号码和电子邮件地址?

例如:

Hi, I am selling a Bugatti Veyron
Age: 2010
Color: Black
You can contact me on 066/656-656 or 055646646
or via mail mesell@domain.com

如果有人试图输入这样的东西,我想自动删除 个人联系方式。

所以,请帮忙,我该怎么做?

3 个答案:

答案 0 :(得分:1)

你可以按照建议尝试正则表达式,但考虑到输入电话号码非常困难(除非你停止所有号码或知道发生号码的确切形式)。

例如,停止xxx-xxxxxxx数字很容易,但是用户可以在其后面加一个空格键入每个数字,这使得停止更加困难(除非您再次删除键入数字的选项。

对于电子邮件,一个简单的正则表达式来查找@后跟一些文本,一个点和2或3个字符通常很容易找到电子邮件。请注意,人们仍然可以通过他们发送电子邮件的方式来创造性(例如AT代替@)。

这应该都是在服务器端完成的,你可以在客户端使用javascript来使UI友好。

答案 1 :(得分:1)

使用Regex并执行以下操作:

Here's an example (jsFiddle)

<强> HTML

<textarea></textarea><br>
<button>Test</button><br>
<span class="result"></span>

<强>使用Javascript:

function validateEmail(email) { 
    var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    $('.result').html(re.test(email));
    if(re.test(email)){
        $('.result').html("Contain email");
    } else {
        $('.result').html("Do not contain email");
    }
}

$('button').click(function(){
    validateEmail($('textarea').val());
});

请注意,我只查找电子邮件。但你可以使用其他Regex来寻找手机,你只需要搜索类似&#34; javascript regex phone&#34;在Google上。

答案 2 :(得分:-1)

对于电子邮件验证:

<input type="email" name="email">

以下是一个示例:http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_type_email

对于电话号码验证:  使用正则表达式,它应该是直截了当的。 或者只是尝试isNAN(值),其中value是输入的电话号码,会告诉你这是否是一个数字,然后你也可以检查数字位数。

希望这有帮助!