jQueryを使ってThickBoxのコンテンツを操作するための最初のコールバック
質問
ここでのシナリオは次のとおりです。
ThickBoxのは、オートコンプリートをサポートした入力のセットが含まれているAjaxのコンテンツ(DIVベースのフォーム)と(ボタンが押された)親ウィンドウから開かれます。 ThickBoxの(フォーム)が閉鎖されると、入力された値は親ウィンドウに渡す必要があります。
質問:
ThickBoxの内容を動的にロードされているので、何がjQueryの($(ThickBoxの一種).ready ...)?
解決
私れる好ましいオプションは、 jqModal のようなその他のモーダルプラグインのオプションを検討することです。これは、あなたが利用することができonShowとonHideイベントフックを公開しています。
ThickBoxのはその年齢を示している、それはあなたが観察できる任意の「ショー」イベントを公開しません。 あなたがThickBoxのを使用して地獄の曲がっているなら、あなたはいくつかのオプションがあります。
1つのオプションは、jQueryのは、例えば $ .ajaxSuccessイベントを公開グローバルAjaxのイベントを使用することです>。 ThickBoxのが正常に表示するデータを要求したときに発生します。しかしモーダルにデータを追加していない可能性がThickBoxのこの時点で、あなたはこれを試してみる必要があります。
例えば
$.ajaxSuccess( function(evt, request, settings){
//ajax method has completed
});
したがって、あなたは、いくつかの余分なチェックをすることができ、このイベントは、あなたのページ内で起こるのすべてののAJAXイベントの完了時に発火することに注意してください。
別のオプションは、ThickBoxのスクリプトを変更して、モーダルが示されたときに送出されます機能に渡すことができます独自のコールバックのコードを追加することです。
他のヒント
あなたは LiveQuery のプラグインを使用することができます。このプラグインは、DOMの変化やDOMを読んで自動的に再バインド他のプラグインをインターセプトします。