4

適切なコンテンツを表示するために投稿された変数を受け取るdiv内にphpページをロードしています。これを使用して動作します:

$(".mainArea").load("page.php", {'folder': 'a'}).fadeIn(); 
//passes vars, but all my jquery event handlers no longer work

問題は、このコンテンツを動的にロードした後、イベントハンドラーを機能させることができないことです。だから私は解決策はこれだろうと思った:

$(".mainArea").on("load", "page.php", {'folder': 'a'}).fadeIn(); 
// all event handlers still work - but the variables do not get posted...

これら2つを組み合わせる方法、または後で実際に変数を渡す方法についてのアイデアはありますか?

4

1 に答える 1

5
  • .load指定されたURLからサーバーからデータをロードし、結果のコンテンツを指定された要素に配置します。

  • このload イベントは、要素とそのサブ要素が完全に読み込まれたときに発生します。このイベントは、特定のタイプの要素でのみ使用できます。

基本的に、これらは2つのまったく異なることを行います(ただし、jQueryでは同じ関数名を持っているため、簡単に混乱します)。

新しいコンテンツをロードするときにイベントハンドラーがバインドされていないという問題については、次を使用してイベント委任を使用する必要がありonます。

$("container_selector").on("event", "child-element-selector", function () {...});
于 2012-05-20T19:29:54.380 に答える