附加字段的jQuery表单验证

时间:2011-03-14 04:10:08

标签: javascript jquery

我有一个包含几个字段的表单。它很容易验证这种形式。但是当我使用追加或克隆命令并在其中动态添加更多字段时,我无法验证附加字段 这是我的代码:

function addone(container, new_div) {  
    var to_copy = document.getElementById(new_div);  
    $(to_copy).clone(true).insertAfter(to_copy);  
}

因为哪个字段和我想让所有字段都出来并不重要,所以我使用了class而不是id。

$(document).ready(function(){  
    $('#add_size').live('click', function(){  
        if($('.inp').val() == "") {  
            alert('Need to fill-out all fields')  
        }  
        else {  
            alert('Thanks')  
        }  
    })  
})

有什么想法吗?提前谢谢。

2 个答案:

答案 0 :(得分:1)

$(document).ready(function(){  
    $('#add_size').live('click', function(){  
        if( ! checkvalid() ) {  
            alert('Need to fill-out all fields')  
        }  
        else {  
            alert('Thanks')  
        }  
    })  
})

function checkvalid(){
    var valid = true;
   $('.inp').each(function(){
       if (this.value == '') {
           valid = false;
           return;
       }
   })
   return valid;
}

答案 1 :(得分:0)

我看到一件可能会让你麻烦的事情......:

如果您只是在提交时检查字段的有效性,那么我认为您不需要实时处理程序。你没有用#add_size添加字段,你要添加.inp。只需在click上进行验证,jQuery就应该找到事件发生时所有的.inp类字段:

$('#add_size').click(function(

   $('.inp').each ...

)};

或许我完全读错了这个问题......