Php JQuery表单验证以检查2个字段

Php JQuery表单验证以检查2个字段,php,jquery,forms,validation,Php,Jquery,Forms,Validation,我有一个使用JQuery验证的联系人表单,因此某些字段在发送之前必须包含一个值。我有两个字段(电话和电子邮件),其中一个或两个必须填写,因此我使用此代码验证: <script> $(document).ready(function() { var nameok = 0; var telephoneok = 0; var emailok = 0; var messageok = 0; var val

我有一个使用JQuery验证的联系人表单,因此某些字段在发送之前必须包含一个值。我有两个字段(电话和电子邮件),其中一个或两个必须填写,因此我使用此代码验证:

<script>
    $(document).ready(function() {
        var nameok = 0;
        var telephoneok = 0;
        var emailok = 0;
        var messageok = 0;
        var validok = 1;
        var contactok = 1;
        // Name Validation
        $('#name').blur(function() {
            var name = $("#name").val();
            if (name.length < 1) {
                nameok = 0;
            } else {
                nameok = 1;
            }
        });
        // Telephone Validation
        $('#telephone').blur(function() {
            var telephone = $("#telephone").val();
            if (telephone.length < 1) {
                telephoneok = 0;
            } else {
                telephoneok = 1;
            }
        });
        // E-Mail Validation
        $('#email').blur(function() {
            var email = $("#email").val();
            if (email.length < 1) {
                emailok = 0;
            } else {
                emailok = 1;
            }
        });
        // Message Validation
        $('#message').blur(function() {
            var message = $("#message").val();
            if (message.length < 1) {
                messageok = 0;
            } else {
                messageok = 1;
            }
        });
        // Valid Validation
        $('#valid').blur(function() {
            var valid = $("#valid").val();
            if (valid.length > 0) {
                validok = 0;
            } else {
                validok = 1;
            }
        });
        // Contact Validation
        if (telephoneok == 0 && emailok == 0) {
            contactok = 0;
        } else {
            contactok = 1;
        }
        // Submit button action
        $('#submit').click(function() {
            if (nameok == 1 && messageok == 1 && validok == 1 && contactok = 1) {
                $('#submit').hide();
                $('#form').submit();
            } else {
                $('#submit').show();
                return false;
            }
        });
        //End
    });
</script>

$(文档).ready(函数(){
var nameok=0;
var=0;
var=0;
var messageok=0;
var validok=1;
var contactok=1;
//名称验证
$('#name').blur(函数(){
var name=$(“#name”).val();
如果(名称长度<1){
nameok=0;
}否则{
nameok=1;
}
});
//电话验证
$(“#电话”).blur(函数(){
var电话=$(“#电话”).val();
如果(电话长度<1){
电话正常=0;
}否则{
电话正常=1;
}
});
//电子邮件验证
$('#email').blur(函数(){
var email=$(“#email”).val();
如果(email.length<1){
emailok=0;
}否则{
emailok=1;
}
});
//消息验证
$('#message').blur(函数(){
var message=$(“#message”).val();
if(message.length<1){
messageok=0;
}否则{
messageok=1;
}
});
//有效验证
$('#valid').blur(函数(){
var valid=$(“#valid”).val();
如果(有效长度>0){
validok=0;
}否则{
validok=1;
}
});
//联系人验证
如果(电话OK==0&&emailok==0){
contactok=0;
}否则{
contactok=1;
}
//提交按钮操作
$(“#提交”)。单击(函数(){
如果(nameok==1&&messageok==1&&validok==1&&contactok=1){
$(“#提交”).hide();
$('表格').submit();
}否则{
$(“#提交”).show();
返回false;
}
});
//结束
});

但是,如果电话或电子邮件字段都不完整,它仍会发送表单。我很确定错误在
联系人验证
部分,但我遗漏了什么?

尝试if(telephoneok==0&&emailok==0){contactok=0;}或者{contactok=1;},并且您还需要在提交中添加对contactok的检查。您没有检查contactok,因此即使它是空的,它也会通过。谢谢@Sushil,但是现在表单根本没有提交。您可以对您在单击事件中获得的所有4个值发出警报吗?可能其中一个值不是真的对不起,我对这种编码还不熟悉,我如何发出警报?试着发出警报(nameok);或console.log(nameok);对所有4个值执行此操作。使用alert或console.log。如果您使用的是console.log,则可以检查在浏览器中单击F12时在开发人员控制台中获得的值。