1

実行時にコールバック関数を定義する方法はありますか? これが私が必要とするものです。ファンシーボックスを使用しています。

$.fancybox.open({
            href : '#modal_div',
            minWidth:1150,
            minHeight:820,
            width:1150,
            height:820,
            autoResize:true,
            afterShow:function(){
                set_buttons();

            }
        });

スクリプトの別の部分で、サーバー側から受け取った値が「true」の場合、fancybox は閉じます。サーバーの応答がtrueの場合にのみ特定のことを行うように、コールバック「afterClose」を定義するのは何ですか。それ以外の場合は、単に閉じる必要があります。

$.post("user_action.php", {
                    delete_item:item_id,
                    rel:item_type
                }, function(data){
                            if(data=="true"){
                                $.fancybox.close()
                              //do some stuff afterClose
                            }
                            else{
                            $.fancybox.close()
                            }
                }
            });

必要なのは、外出先でコールバック関数を設定する方法だけです!!

4

1 に答える 1

0

あなたの質問を正しく理解していなかった可能性があります。その場合は、OP を修正してください。もう一度試します。

実際にはすでにコールバック関数にいて、IF テストを正しく構成して、「データ」の値が true かどうかを確認しています。

$.fancybox.close();したがって、そのコメントを入力した場所、つまり指示の直後に、必要なことを行うことができます。

注: その命令の後にセミコロンが必要であることを忘れないでください。

于 2012-11-22T23:14:51.627 に答える