Div onclick e.target.id无效

时间:2017-01-17 06:01:23

标签: javascript html

我试图获取被点击的div的ID。



function select(e) {
  alert('ID : ' + e.target.id);
  // alert('Selected!');
}

div {
  background: red;
  cursor: pointer;
  height: 50px;
  width: 50px;
}

<div id='5' onclick='select()'></div>
&#13;
&#13;
&#13;

我创建了一个你可以玩的codepen here。当我点击div时,我收到一条错误消息,指出eundefined。但是,只打印Selected!的正常警报工作正常。所以e就是问题所在。

1 个答案:

答案 0 :(得分:3)

您没有将任何内容作为参数传递,因此e始终为undefined。为了让event对象传递event对象作为参数。

<div id='5' onclick='select(event)'></div>

function select(e) {
  console.log('ID : ' + e.target.id);
}
div {
  background: red;
  cursor: pointer;
  height: 50px;
  width: 50px;
}
<div id='5' onclick='select(event)'></div>

或者传递this上下文作为参数来引用元素。

function select(ele) {
  console.log('ID : ' + ele.id);
}
div {
  background: red;
  cursor: pointer;
  height: 50px;
  width: 50px;
}
<div id='5' onclick='select(this)'></div>