繁体   English   中英

在提交时验证所有表单字段

[英]Validate all form fields on submit

基本上我正在做的是将8个表单输入值传递给Javascript Ajax文件,在此过程中,我要

if(in_array(all form values) == 'empty') {

这是我正在使用的当前代码

if($("#merchant").val()==='') {
        //prevent submit button to sending to the handler page
        event.preventDefault();
        //popup the alert
        $("#response").html("<br/><div class='alert alert-error'>Please enter a Merchant Name</div>");
        $("#response").slideDown('slow');
        slideout();
        $("#loading").fadeOut('slow');
}

但是使用此代码,我必须为每个字段复制并粘贴大约8次,如果可能的话,我宁愿进行数组检查。

Javascript是否可能? 如果可以的话如何?

像这样在表单的:inputs进行迭代,假设您在submit事件中,表单就是this

$(':input', this).each(function(e) {
    if ($(this).val() === '') {
        // do your stuff
    }
});

您还可以将错误消息作为数据属性附加并像这样引用它

<input type="text" ... data-error-msg="Some Error Message"/>

$(this).data('error-msg');

该功能完美运行

function in_array(item,arr) {
     for(p=0;p<arr.length;p++) if (item == arr[p]) return true;
     return false;
}

这样使用

if(in_array("value", myarray))
{
   // Do something
}

这只会选择空元素:

$(".my-class:empty").each(function() {
    // Do things
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM