检查所有文件输入的内容

时间:2013-01-29 20:27:21

标签: jquery

每次对其中一个输入进行更改时,我都会尝试使用.ruFileInput类遍历所有文件输入。

如果他们都被填满了我想做点什么 - 在这个例子中警告(“No Empty Fields !!”);

问题是,每次文件输入更改时,消息都会弹出,而不是一旦填充完就发出警报。有什么建议吗?

$('input.ruFileInput').live('change' , function () { 
    $("input.ruFileInput").each(function() {
        if($(this).val() != ""){
            alert("No Empty Fields!!");
        }
    });
});

3 个答案:

答案 0 :(得分:1)

var doesEmptyExist = $("input.ruFileInput").filter(function(){
    return this.value === "";
}).length > 0;

注意live自1.7 后被弃用,并已在1.9 中删除,停止使用它!

$('#containerId').on('change', 'input.ruFileInput', function(){
    var doesEmptyExist = $("input.ruFileInput").filter(function(){
        return this.value === "";
    }).length > 0;

    if (!doesEmptyExist)
        alert('no empty boxes');
});

答案 1 :(得分:1)

只需使用jQuery选择器:

if ($('input.ruFileInput[value=""]').length == 0) {
    alert("No empty Fields");
}

答案 2 :(得分:0)

尝试设置布尔值,而不是.each循环中的提醒。

$('input.ruFileInput').live('change', function () {
    var isEmpty = false;
    $("input.ruFileInput").each(function () {
        if ($(this).val() != "") {
            isEmpty = true;
            break;
        }
    });
    if (!isEmpty) {
        alert("No Empty Fields!!");
    }
});