1
私はJqueryでdiv
をtextarea
に変更し、ぼかしでdiv
に変更する2つの関数を持っています。 div
のid
を保存し、それをネストされた関数で使用する必要があります。これら2つの機能の間でid
をどうやって渡すことができますか? これはずっとより良いアプローチは、タイプ間の要素を切り替えるに委任イベントハンドラを使用することであろうイベントjqueryは相互関数のパラメータを渡します
function divClicked(id) {
console.log("click");
var divHtml = $(this).html();
var editableText = $("<textarea />");
editableText.val(divHtml);
$(this).replaceWith(editableText);
editableText.focus();
// setup the blur event for this new textarea
var iden = $(this).attr("id");
editableText.blur(id, editableTextBlurred);
}
function editableTextBlurred(id) {
console.log("blur");
var html = $(this).val();
var viewableText = $("<div>");
viewableText.html(html);
$(this).replaceWith(viewableText);
var descr = viewableText.html();
// setup the click event for this new div
cool_function(id, descr);
$(viewableText).click(id, divClicked);
}
idをテキストエリアに配置してみませんか?両方の場合、divとtextareaのIDが互いに置き換わるIDは、 – Taplar
のように設定されます。スワップにバインディングを再作成する必要がないように、デリゲートバインディングを考慮する必要があります。 – Taplar
それぞれの 'div'は変数idを持ちます。 PHPコードで作成されているため、特定のIDを与えることはできません。 –