验证电话号码&同一输入字段中的电子邮件地址

时间:2015-05-13 11:15:34

标签: twitter-bootstrap validation

我需要验证电话号码和电话号码。在同一输入字段中的电子邮件地址,如果用户输入字母,则应显示电子邮件验证&如果用户尝试输入电话号码,则应显示电话号码验证。请帮忙解决这个问题。我正在使用此http://1000hz.github.io/bootstrap-validator/

中的bootstrap验证程序

2 个答案:

答案 0 :(得分:1)

使用jquery进行电子邮件和手机验证.. DEMO

$('#sub').click(function(){
var ep_emailval = $('#email').val();
console.log(ep_emailval);
    var intRegex = /[0-9 -()+]+$/;

if(intRegex.test(ep_emailval)) {
   console.log("is phone");
   if((ep_emailval.length < 9) || (!intRegex.test(ep_emailval)))
{
     alert('Please enter a valid phone number.');
     //return false;
}

}
    else
    {
 var eml = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;       
        console.log("is email");
        if (eml.test(ep_emailval) == false) {
    alert("Please enter valid email address.");
   // $("#<%=txtEmail.ClientID %>").focus();
    //return false;
 }
    }
});

答案 1 :(得分:1)

听起来上面的答案很好,但也希望传递我的回答。看起来像是一样但可能有更强大的电话号码处理。还有演示jquery表单提交事件处理这是我喜欢的模式。 https://jsfiddle.net/joedonahue/8vasb4nu/9/

<!--HTML-->
<form id="myform" name="myform" action="/echo/html/" method="post">
    <input type="text" id="myinput" name="myinput" />
    <input type="submit" value="submit" />
</form> 

<!--JavaScript-->    

/* Get Values */
var i1 = $("#myinput");

/* Map Event Handler */
$("#myform").on("submit",validate);

/* Validate Function */
function validate(){

    /* Phone Test */
    var filter = /^((\+[1-9]{1,4}[ \-]*)|(\([0-9]{2,3}\)[ \-]*)|([0-9]{2,4})[ \-]*)*?[0-9]{3,4}?[ \-]*[0-9]{3,4}?$/;
    if (filter.test(i1.val())) {
        alert("true!");
        return true;
    }

    /* Email Test */
    var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
    if (filter.test(i1.val())) {
        alert("true!");
        return true;
    }

    alert("false!");
    return false;
}