从click事件中获取值

时间:2014-08-21 00:50:06

标签: javascript jquery html

<div id="card0">
<div id="card1">
<div id="card2">
<div id="card3">
<div id="card4">

我创造了一张牌,牌组和手牌“等级”。 我想要做的是为一组卡片创建一个事件处理程序。

for (var i = 0; i < 5; i++) {
    myHand.cards[i] = myDeck.deal();
}

我还想在循环中创建事件处理程序:

$("#card"+i).on("click", cardClicked);
function cardClicked() {
    alert(this);
}

有没有办法找出点击了哪个div?我试过做一个匿名函数传递事件。我试过这个,但我不知道还有什么可以尝试。

1 个答案:

答案 0 :(得分:0)

只需为事件处理程序提供一个在调用它时传递的参数:

function cardClicked(e){
   console.log(e.target.id);
}

请注意,您应该使用console.log()进行调试,而不是alert()。登录到控制台将显示元素/对象的实际结构/您正在记录的任何内容。

此外,还有一种更简单的方法来附加侦听器:

var divs = document.getElementsByTagName("div");
for(var i = 0; i < divs.length; i++){
    $(divs[i]).click(function(e){
        console.log(e.target.id);
    });
}