0

スプレッドシートのようなメニューボタンから編集中にセルのスタイルを変更しなければならないので知りたいです。

$("#tab1 tr td:not(:first-child)").on("click", function (e) {          
    console.log(e);
    if(e.currentTarget.contentEditable != null){
         $(e.currentTarget).attr("contentEditable",true);
     }
     else{
         $(e.currentTarget).append("<input type='text'>");
     }
});
//Add bold text
$("#tab1 tr td:not(:first-child)").on("click", function () { 
   var mytd=this;
   $("#btn4 li a:eq(0)").on("click",function() {
     $(mytd).toggleClass("bold");
     $(this).toggleClass("bg");
   });
});
4

4 に答える 4

1

となりますtd。を実行しconsole.log($(this).html())て調べます。

于 2013-03-06T12:43:19.130 に答える
1

次のことを試してください

console.log(e.target);

関数パラメーターの引数として e を渡す必要があることに注意してください

于 2013-03-06T12:45:52.550 に答える
0

this、または同様の手法event.currentTargetを使用してスコープを明示的に操作していない限り、通常、イベント ハンドラ内の は と等しくなります。$.proxy()Object.bind

私は通常、イベント ハンドラーでevent.targetandを使用event.currentTargetします。これは、より明示的であり、関数が簡単に再バインド可能なスコープ var を持つことができるためです。(たとえば、別のオブジェクトのプロパティであるイベント ハンドラーを使用して、そのインスタンスにバインドできます。)

于 2013-03-06T13:38:08.563 に答える
0

@Jitesh Tukadiya が言ったように、console.log(e.target); も試してください。

debug your self を使用して、alert(); を表示することもできます。さまざまな引数を使用して、それが与えるものを分析します .

デバッグツールを使用してください。

于 2013-03-06T13:05:12.333 に答える