验证提交时的所有表单域

时间:2013-02-05 22:50:41

标签: javascript jquery

基本上我正在做的是将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吗?如果是这样的话?

3 个答案:

答案 0 :(得分:2)

对{* 1}}这样的表单进行迭代,假设您处于:inputs事件且表单为submit

this

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

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

答案 1 :(得分:0)

此功能完美无缺

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
}

答案 2 :(得分:-1)

这只会选择空的元素:

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