【发布时间】:2017-12-05 13:01:28
【问题描述】:
我对 JavaScript 完全陌生,正在努力让它发挥作用。单击按钮时,我正在尝试在警报框中显示联系方式。
信息显示在下面概述的嵌套 DIV 中:
<div class="info-and-actions">
<div class="info">
<div class="name-container">
<h4 class="name"><a href="#" title="Name" class="name-link">Trader 1</a></h4>
</div>
<div class="details-container">
<p class="tele">###############</p>
<p class="email">hello@url.com</p>
</div>
<div class="actions">
<button class="displayContactDetails">Display contact details</button>
</div>
</div>
</div>
<div class="info-and-actions">
<div class="info">
<div class="name-container">
<h4 class="name"><a href="#" title="Name" class="name-link">Trader 2</a></h4>
</div>
<div class="details-container">
<p class="tele">###############</p>
<p class="email">hello@url.com</p>
</div>
<div class="actions">
<button class="displayContactDetails">Display contact details</button>
</div>
我将这个 JavaScript 与 displayContactDetails 按钮上的事件侦听器一起使用,以在警报框中显示联系人详细信息。
function displayContactDetails() {
var contactName = document.querySelector("a.name-link.profile-link").textContent;
var contactTele = document.querySelector("p.tele").textContent;
alert("Contact " + contactName + " on " + contactTele);
}
当点击任何 displayContactDetails 按钮时,当前会显示第一个交易者的联系方式。
我要做的是从按钮的父元素(.name-container 和 .details-container)中选择相关的联系信息 - 所以当点击第二个按钮时,会显示 Trader 2 的详细信息。
如何遍历 DOM 来实现这一点?
【问题讨论】:
标签: javascript dom dom-events