2017-01-02 43 views
-1

我试图在发生点击事件时捕获父类的文本值。在这种情况下,父类ame是mb-name,并且将具有与其关联的“文本值”。我想要捕获该文本。下面是html。如何使用Javascript捕获父元素的文本值

<div class="mbs-item-inner"> 
    <div class="mb-img">,,,</div> 
    <h5 class="mb-name">Joe Banker</p> 
    <p class="mb-title">Banker</h5> 
    <p class="mb-loc">Virginia Beach, VA</p> 
    <p class="mb-view"> 
    <a href = "......." class= "btn-ghost-blue" target="_blank">VIEW ME</a> ==   $0 
</p> 

点击事件发生在类= MB-观点..我想“在这种情况下,乔银行家”捕捉类= MB名。我尝试了以下方法

document.getElementByClassName(“mb-name”).text; 返回true;

和一些其他的document.getElementssbyClassName变量,但没有任何工作。我欢迎所有的建议。 谢谢。

+0

我的问题是不一样建议为重复的问题。 – Darius

回答

-1

这段代码应该做你想做的。

document.getElementsByClassName('mb-name')[0].innerHTML; 

我建议你清理一下你的HTML。你开始一个以p-tag结束的h5-tag,反之亦然。

假若你是使用jQuery你可以以同样的是这样的:

$('h5.mb-name').text(); 
+0

HTl很抢手,但它在网站上很好,我不是该网站的编码器。我只是试着快速输入我关心的内容,不注意语法等。我会尝试你的建议。感谢您的回复 – Darius

+0

所以我做了以下.. var name = document.getElementsByClassName('mb-name')[0] .innerHTML;返回名称; ....问题是,它正在冒泡并从列表中的第一个元素中获取mb-name。换句话说,我在上面发布的html代码只是列表中的许多相同内容中的一个。因此,不是抓取与实际点击事件关联的mb名称,而是冒泡到列表的顶部并抓取第一个mb-name ..我如何解决这个问题? – Darius

+0

然后,您需要确保为其自己的父对象设置了单击事件。像这样[jsfiddle](https://jsfiddle.net/0tLyy0e2/3/) – Ondemannen