私はいくつかの jQuery UI ダイアログを持つ Web アプリで pjax を使用しています。
私が直面している問題は、ダイアログの作成に使用される div 要素が、ダイアログの作成時に dom 内のコンテナーから移動されることです。
pjax が新しいページをロードするとき、pjax がコンテンツをロードするコンテナー内に存在しなくなるため、ダイアログ div は破棄されません。pjax がダイアログでページに戻ると、div 要素の 2 番目のコピーが読み込まれ、dom に存在する重複した要素のためにすべてがバグになります。
この問題に対するエレガントな解決策を見つけた人はいますか? jQuery UI ダイアログ呼び出しによって行われたすべての dom 変更をクリーンアップする方法はありますか?
また、この問題は pjax に固有のものではないことにも言及する必要があります。$("#mycontainer").load("page-with-dialog.html"); を単純に使用すると、同じことが起こります。