0

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

4

3 回答 3

2

像这样迭代: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');
于 2013-02-05T22:52:41.873 回答
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
}
于 2013-02-05T22:53:26.027 回答
-1

这只会选择空的元素:

$(".my-class:empty").each(function() {
    // Do things
});
于 2013-02-05T22:56:10.850 回答