-2

ページに複数のテーブルがあり、テーブル セルの上にマウスを置いたときにそのセルの値を確認したいと考えています。

「mouseenter」ハンドラーを試してみましalert(this);たが、確かに の上にマウスを置くとアラートが表示され<td>ますが、アラートには [object Window] と表示されます。

オブジェクト Window が何を意味するか知っている人はいますか? または、マウスオーバーしたときに a の値 (つまり、innerText) を取得する方法を設定する必要があり<td>ますか?

前もって感謝します!

*編集

一般的な要求により、コードは次のとおりです。

<tr onmouseover ='showDetails()'><td class = 'actuCourse'></td></tr> 

それから

function showDetails(){

$(document).ready(function(){
    $(".actuCourse").mouseenter(function(){
        alert($(this).text());
    });
});

}

これは、jQueryを提案した回答の1つのおかげで、私が今持っているものです

それは機能しますが、マウスオーバーするたびに、より多くのアラートが連続してアラートを出します。

再度、感謝します

4

2 に答える 2

1

trここで起こっていることは、がホバーされるたびに、追加のmouseenterリスナーがactuCourse要素に追加されることです。

そのはず

<tr><td class = 'actuCourse'></td></tr> 

$(document).ready(function(){
    $(".actuCourse").mouseenter(function(){
        alert($(this).text());
    });
});

tdまたはクラスが動的に追加される場合は、次を使用します

$(document).ready(function(){
    $(document).on('mouseenter', ".actuCourse", function(){
        alert($(this).text());
    });
});
于 2013-07-26T08:34:07.723 に答える