0

複数の要素で同じ onclick ハンドラーを使用したいので、次のようにします。

function close_div() {
    $(this).remove();
}

<div class="closeX" onclick="close_div()">The first div</div>
<div class="closeX" onclick="close_div()"The second div</div>
<div class="closeX" onclick="close_div()"The third div</div>

したがって、任意の div をクリックすると、DOM から削除されます。

上記のコードの問題は、onclick が便利な this キーワードを渡さないため、close_div() がそれを使用できないことです。それぞれdiv.closeXに異なるIDを指定すると、それを as として渡し、 のclose_div(id)ような ことができ$("#"+id).remove()ます。しかし、要素にIDを割り当ててそれを渡すことなく、クリックされた要素への参照を自動的に渡す方法があるはずです。何か不足していますか?

ありがとう

4

3 に答える 3

0
function close_div(el) {
    $(el).remove();
}

<div class="closeX" onclick="close_div(this)">The first div</div>
<div class="closeX" onclick="close_div(this)"The second div</div>
<div class="closeX" onclick="close_div(this)"The third div</div>
于 2013-04-18T08:04:05.663 に答える