2012-03-21 13 views
0

)私は表示/非表示のdivがあります。これらのdiv内のフォームは、非表示にするとリセットされますが、動作していないようです:jquery .on( 'hide'、関数

$('#div_id_1,#div_id_2').on('hide',function(){ 
    $('#form_id_1,#form_id_2').each(function(){ 
     this.reset(); 
    }); 
}); 

この機能トリガれることは決してありません。私は?この「隠す」イベントをキャプチャ

感謝する方法を

あなたが実際に隠れを行う場所にリセットコードを配置するいずれかの必要があるだろう
+0

event hideはカスタムイベントですか? – Jorge

+0

いつこれらのイベントを隠していますか?私はあなたがいるかどうかは分かりませんが、 '.hide()'でコールバックを使うことはできませんでしたか? – rgin

答えて

2

、または単に自分自身を「隠す」イベントを誘発するだけです:

$('#somelink').click(function() { 
    $('#div_id_1').hide().trigger('hide'); 
}); 

これは、jQuery自体によってトリガーされるhideイベントがないためです(docsを参照)。

+0

はい、私はこれを疑っています。隠す機能に '.trigger( 'hide')'を追加するだけです。 –

0

イベントを手動でトリガーする必要があります。

$('#div_id_1').hide('fast', function() { 
    $(this).trigger('hide'); 
});