获取被点击的 li 元素的值

ela*_*hen 3 javascript event-listener

首先,我向 ul 添加了一个 EventListener,如下所示:

action_list_ul.addEventListener("click", set_ua_value, false);
Run Code Online (Sandbox Code Playgroud)

set_ua_value 作业是为了:

• 监听对 ul 子元素(li 元素)的每次点击 • 获取被点击的 li 内的 a 标签的值(innerHTML?)

<ul id="action-list">
<li><a href="#">foo</a></li>
<li><a href="#">bar</a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

如果 foo 被点击,我需要检索“foo”字符串。

由于我对 javascript 还很陌生,我不确定如何获得点击的 li 的实际“这个”。

我不想使用 jQuery。谢谢 :)

Nic*_*lin 5

一种快速而肮脏的方法是将事件绑定到列表,并通过锚标记进行过滤:

JS

var action_list_ul = document.getElementById('action-list');
action_list_ul.addEventListener("click", set_ua_value, false);

function set_ua_value (e) {
  if(e.target.nodeName == "A") {
       console.log(e.target.innerHTML);
    }

}
Run Code Online (Sandbox Code Playgroud)

JS斌

或者,您可以按 过滤LI,并通过firstChild或访问锚点childNodes[0]