jQuery 1.8 から 1.9 へのアップグレードに取り組んでおり、問題が発生しています。特定のページのモーダルにロードできる特定のページがあります。ajax を使用してこれを行いscript
、返された html から要素を解析します。次に、html をページに追加し、スクリプトをhead
. 次のようになります。
controller_element = $( html )
body_scripts = $( controller_element, "script" ).remove()
$( ".modal-body" ).append controller_element
$("head").append body_scripts
これは 1.8 では機能していましたが、現在 1.9 で問題が発生しています。この問題は、ドキュメントの準備完了イベントを中心に展開しているようです。HTMLには、ドキュメントの準備ができたときに実行する必要があるインラインjavascriptがいくつかあります。これは、ドキュメントによると正しいと思われる追加の直後に実行されます。本当に必要なのは、javascript スクリプトが .xml ファイルに追加された後に実行する必要があることhead
です。また、イベントを dom にバインドするには、html がロードされた後に js を実行する必要があるため、これら 2 行の順序を単純に入れ替えることはできません。本当に、1.8 と 1.9 の間に何が起こったのかについてのいくつかの考えは非常に役に立ちます. または、他の誰かが ajax を介して新しいページをモーダルにロードする実装に成功した場合は、実装を聞きたいです。ありがとう。