2012-03-21 8 views
1

静的なHTMLページでJQueryのeditInPlaceプラグインを使用しています。Ajaxを挿入したHTMLでJQueryを使用するeditInPlace

Ajax呼び出しでHTMLを挿入すると、同じHTMLでは機能しません。

'$('。edit_inplace_field ')。on(...)'などの.on()を使用すると、問題を解決するのに役立ちますが、このためにどのようにしたらよいかわかりません特定のプラグインを使用できます。

プラグイン:http://code.google.com/p/jquery-in-place-editor/

作業静的HTMLコードは次のようになります。

<p id="name_id" style="background-color: transparent; 
     "class="edit_inplace_field">Enter Name</p> 

静的なHTMLで使用された関連するスクリプト:

$('.edit_inplace_field').editInPlace({ 
    callback: function(unused, enteredText) { return enteredText; }, 
// url: './server.php', 
show_buttons: false 
}); 

ヘルプになります大いに感謝します。

答えて

2

によって指さ情報の使用:デイブ・ハウエンシュタイン
1 - 私は上記を解決http://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_event_live_newel上の例を使用してjqueryのライブAPIと
2でを。

上記のイベントは、,イベントでした。
.live()関数内で上記のjqueryのコードを置く:

$('.edit_inplace_field').live("click",function() { 
      // --> code from above here, object is replaced by $(this) 
    $(this).editInPlace({ 
     callback: function(unused, enteredText) { return enteredText; }, 
     show_buttons: false 
    }); // --< 
}); 

コメント:それは)(.on使用することが提案され、より高度なjQueryの1.7以降のバージョンを使用している場合機能、この心の中で解決して。 hereを参照してください。

+0

このソリューションでは、編集可能な要素を編集するために2回クリックする必要があります。 また、 'click'ではなく' mouseenter'イベントで編集可能なコンテンツの親要素に 'live'関数を呼び出し、' this'を編集可能なフィールドに変更することができます。 – spsaucier

関連する問題