Javascript 限制输入一些个人信息

Javascript 限制输入一些个人信息,javascript,php,jquery,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 如果有人试图输入类似的内容,我希望自动删除 个人联系方式 那么,请帮助我,我该怎么做呢?对于电子邮件验证: <in

我想检查用户在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
如果有人试图输入类似的内容,我希望自动删除 个人联系方式

那么,请帮助我,我该怎么做呢?

对于电子邮件验证:

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

以下是一个例子:

对于电话号码验证: 使用正则表达式,它应该是直接的。 或者只需尝试isNAN(值),其中值是输入的电话号码,它会告诉您这是不是一个数字,然后您还可以检查数字的数量


希望这有帮助

您可以按照建议尝试Regex,但要想阻止输入电话号码是非常困难的(除非您停止输入所有号码或知道号码的确切形式)

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

至于电子邮件,一个简单的正则表达式可以找到@,后跟一些文本、一个点和2或3个字符,通常可以很容易地找到电子邮件。请注意,人们在放置电子邮件的方式上仍然可以很有创意(例如,用AT代替@)

这些都应该在服务器端完成,您可以在客户端使用javascript使其界面友好。

使用并执行以下操作:

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());
});
功能验证电子邮件(电子邮件){
变量re=/^([^()[\]\\,;:\s@\“]+(\.[^()[\]\,;:\s@\“]+)*)(\'+\”)(\[[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[1,3}.[0-9]{1,3}.];
$('.result').html(重新测试(电子邮件));
如果(重新测试(电子邮件)){
$('.result').html(“包含电子邮件”);
}否则{
$('.result').html(“不包含电子邮件”);
}
}
$(“按钮”)。单击(函数(){
validateEmail($('textarea').val());
});

请注意,我只查找电子邮件。但您可以使用其他正则表达式查找电话,您只需搜索类似“javascript正则表达式电话”的内容在谷歌上。

这是一个非常有效的注释:我看到人们一直在craigslist上键入他们的号码:
123-four56-seven890
——这很难阻止。也许不可能。我想你误解了目标。他不是在寻找验证,他想阻止输入。