0

ユーザーが小さなアイコンをクリックすると、Shadowbox-JSを使用して設定ページを表示するサイトがあります。ユーザーがメインアプリケーションで見ているもののビューをカスタマイズできるようにするための設定があります。

設定ページは完全な (ただしコンパクトな) .aspx ページで、設定の適用、データベースへの更新、データベースからの読み取りなどに関連するすべてのコードが含まれているため、すべてうまく動的です。私が望むのは、ユーザーがシャドーボックスを閉じるとポストバックが発生し、メインページのビューが自動的に更新されて変更が反映されるようにすることです。

ユーザーが設定領域で「保存」を押すと、次のリンクが表示されます。

<a onclick="window.parent.location.href = window.parent.location.href;">Settings saved.  Please close this window</a>

これは基本的にページ全体を更新するだけであり、もちろん、その過程でシャドーボックスはもうありません. このアプローチは問題なく機能しますが、問題は、ユーザーがシャドーボックスの外側をクリックしてシャドーボックスを閉じるオプションを持っていることです。これがいつ発生したかをキャプチャし、これが発生したときにポストバック (またはページの更新) を発生させて、シャドーボックスを閉じたときに設定が常に適用されるようにする必要があります。

4

1 に答える 1

0

答えが見つかりました。次のようにShadowbox.init()関数にオプションを追加する必要がありました。

Shadowbox.init({
    onClose: function () {
        window.location.href = window.location.href;
    }
});
于 2011-07-19T12:20:43.870 に答える