0

入力の1つが変更されるたびに、.ruFileInputのクラスですべてのファイル入力を循環しようとしています。

それらがすべて満たされている場合、私は何かをしたいと思います-この例では alert("No Empty Fields!!");

問題は、ファイル入力がすべて入力されると警告するのではなく、ファイル入力が変更されるたびにメッセージが表示されることです。助言がありますか?

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

3 に答える 3

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

Noteliveは 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');
});
于 2013-01-29T20:30:06.617 に答える
1

jQueryセレクターを使用するだけです:

if ($('input.ruFileInput[value=""]').length == 0) {
    alert("No empty Fields");
}
于 2013-01-29T20:33:52.123 に答える
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!!");
    }
});
于 2013-01-29T20:31:39.070 に答える