Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 电子邮件检查和逗号分隔的检查jQuery代码可以正确地分开工作,但不能混合使用以禁用submit按钮_Html_Jquery_Form Submit - Fatal编程技术网

Html 电子邮件检查和逗号分隔的检查jQuery代码可以正确地分开工作,但不能混合使用以禁用submit按钮

Html 电子邮件检查和逗号分隔的检查jQuery代码可以正确地分开工作,但不能混合使用以禁用submit按钮,html,jquery,form-submit,Html,Jquery,Form Submit,我必须确保每个函数都查找有效的电子邮件,另一个函数查找逗号分隔的输入(不确定我是否有最好的逗号分隔jQuery代码) 但是,当我在输入框中输入逗号分隔的正确输入时,它仍然允许我单击submit按钮,这很奇怪,因为电子邮件是空的,我希望submit按钮保持禁用状态。这两个功能分别正常工作 $("#category_names").on('keyup', function (event) { $(".error").hide(); let hasError = false;

我必须确保每个函数都查找有效的电子邮件,另一个函数查找逗号分隔的输入(不确定我是否有最好的逗号分隔jQuery代码)

但是,当我在输入框中输入逗号分隔的正确输入时,它仍然允许我单击submit按钮,这很奇怪,因为电子邮件是空的,我希望submit按钮保持禁用状态。这两个功能分别正常工作

$("#category_names").on('keyup', function (event) {
    $(".error").hide();
    let hasError = false;

    let isValid = true;
    $('#category_names').each(function() {
        if (($.trim($(this).val()).indexOf(",") == -1)) {
            //alert('Please separate multiple keywords with a comma.');
            $('#commaerror').show();
            hasError = true;
        } else {
            $('#commaerror').hide()
            hasError = false;
        }
    });
    $('button[type="submit"]').prop('disabled', hasError);


})


$("#email").on('keyup', function() {
    $(".error").hide();
    let hasError = false;

    let emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;

    let emailAddressVal = $(this).val();
    if (emailAddressVal == '') {
        $("#email").after('<span class="error">Please enter your email address.</span>');
        hasError = true;
    }
    else if (!emailReg.test(emailAddressVal)) {
        $("#email").after('<span class="error">Enter a valid email address.</span>');
        hasError = true;
    }

    $('button[type="submit"]').prop('disabled', hasError);
})
$(“#类别名称”)。在('keyup',函数(事件){
$(“.error”).hide();
设hasError=false;
让isValid=true;
$(“#类别名称”)。每个(函数(){
if($.trim($(this.val()).indexOf(“,”=-1)){
//警报('请用逗号分隔多个关键字');
$('#commaerror').show();
hasrerror=true;
}否则{
$('#commaerror').hide()
hasError=false;
}
});
$('button[type=“submit”]”)。prop('disabled',hasrerror);
})
$(“#email”)。在('keyup',function()上{
$(“.error”).hide();
设hasError=false;
让emailReg=/^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
让emailAddressVal=$(this.val();
如果(emailAddressVal==''){
$(“#电子邮件”)。之后('请输入您的电子邮件地址');
hasrerror=true;
}
如果(!emailReg.test(emailAddressVal)){
$(“#电子邮件”)。之后('输入有效的电子邮件地址');
hasrerror=true;
}
$('button[type=“submit”]”)。prop('disabled',hasrerror);
})
您需要检查每个事件处理程序中的两个(全部,如果还有其他输入)条件是否有效。将所有验证代码放入一个函数并在事件处理程序中调用该函数可能是最简单的方法。例如:

函数验证(){
$(“.error,#commaerror”).hide();
设hasError=false;
//验证类别名称
$(“#类别名称”)。每个(函数(){
if($(this.val().indexOf(“,”)==-1){
//警报('请用逗号分隔多个关键字');
$('#commaerror').show();
hasrerror=true;
}
});
//验证电子邮件
让emailReg=/^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
让emailAddressVal=$('#email').val();
如果(emailAddressVal==''){
$(“#电子邮件”)。之后('请输入您的电子邮件地址');
hasrerror=true;
} 
如果(!emailReg.test(emailAddressVal)){
$(“#电子邮件”)。之后('输入有效的电子邮件地址');
hasrerror=true;
}
返回错误;
}
$(“#类别#名称,#电子邮件”)。在('keyup',函数(事件){
$('button[type=“submit”]”)。prop('disabled',validate());
});

输入您的电子邮件

输入类别:
执行帧分类