0

このフォームプラグインを使用しています

しかし、私の一生の間、フォームが送信された後、どのように多くのDOM操作を行うかを理解することはできません。

$('.save-form').each(function() {
    $(this).ajaxForm({
        beforeSubmit: function() {      
            //
        },
        success: function(data) {
            //
        }
    });
});

私は試しまし$(this).find('div').hide();たが、役に立ちませんでした。

HTML:

<form method="post" class="save-form">
    <!-- inputs are here -->
    <div>I want to hide this as well as the parent, "save-form".</div>
</form>
<form method="post" class="save-form">
    <!-- inputs are here -->
    <div>I want to hide this as well as the parent, "save-form".</div>
</form>
<form method="post" class="save-form">
    <!-- inputs are here -->
    <div>I want to hide this as well as the parent, "save-form".</div>
</form>

はい、「save-form」のインスタンスが複数あります

4

4 に答える 4

3

行う:

$('[class=save-form]').each(function() {
    $(this).ajaxForm({
        beforeSubmit: function() {      
            //
        },
        success: function(data) {
            $('[class=save-form]').hide();
        }
    });
});

ラップされたセットの内容が非表示になることに注意してください$('[class=save-form]')。必要に応じてセレクターを調整することもできます。


ちなみに、次を使用できます。

$('.save-form')

それ以外の:

$('[class=save-form]')
于 2012-06-11T09:03:57.023 に答える
2

this呼び出す前にへの参照を保存するajaxFormと、イベントハンドラー内でそれを使用できるようになります。

$('[class=save-form]').each(function() {
    var form = $(this);
    $(this).ajaxForm({
        beforeSubmit: function() {      
            //
        },
        success: function(data) {
            form.hide();
        }
    });
});
于 2012-06-11T09:06:28.210 に答える
2

それぞれが2 つのパラメーターを受け入れます。それらを使用します。

$('[class=save-form]').each(function(index, form) {
    $(this).ajaxForm({
        beforeSubmit: function() {      
            //
        },
        success: function(data) {
            $(form).find('div').hide();
        }
    });
});
于 2012-06-11T09:07:50.853 に答える
0

これが答えかどうかはわかりませんが、div をラップして非表示にすることはできますか? 最も簡単な方法のようです。

于 2012-06-11T09:19:30.397 に答える