0

フォームには 4 つのドロップダウンがあります。1 つはオプションです。残りの 3 つのうち、少なくとも 1 つを選択する必要があります。選択が行われるまで送信を無効にする、1 つのフィールドを持つフォームで使用しているスクリプトがあります。しかし、3つの特定のドロップダウンの少なくとも1つが選択されるまで、それを無効にする方法を理解できず、見つけることができません。現在のスクリプトは次のとおりです。

jQuery(function($) {
    $('#ssbbcmodal-attribute').change(function() {
        var empty = false;
        $('#ssbbcmodal-attribute').each(function() {
            if ($(this).val() == null) {
                empty = true;
            }
        });
        if (empty) {
            $('#ssbbcmodal-submit').attr('disabled', 'disabled');
        } else {
            $('#ssbbcmodal-submit').removeAttr('disabled');
        }
    });
})()

更新 1

方法を考えたのかもしれません。アップデートですぐに戻ってきます。

更新 2

OK、おそらくこれを推測しているため、私のやり方はうまくいきませんでした。これが私が試したことです:

jQuery(function($) {
var empty = false;

    $('#sseomodal-level').change(function() {
        var levelempty = false;
        $('#sseomodal-level').each(function() {
            if ($(this).val() == null) {
                levelempty = true;
            }
        });
    });
    $('#sseomodal-username').change(function() {
        var userempty = false;
        $('#sseomodal-username').each(function() {
            if ($(this).val() == null) {
                userempty = true;
            }
        });
    });
    $('#sseomodal-logged').change(function() {
        var loggedempty = false;
        $('#sseomodal-logged').each(function() {
            if ($(this).val() == null) {
                loggedempty = true;
            }
        });
    });     

if (levelempty === true && userempty === true && loggedempty === true)
    {empty = false}
 if (empty) {
            $('#sseomodal-submit').attr('disabled', 'disabled');
        } else {
            $('#sseomodal-submit').removeAttr('disabled');
        }
})()

disabled 属性はこれで削除されることはありません。つまり、機能しません。

4

1 に答える 1