我在li
中有行li
我有锚标记。我想获得该锚标记的值。我收到了id
的{{1}},但我没有得到锚标记的值。
li
<div class="testcaselist_row">
<ul>
<li id="tc_1" class="clickTestCaseRow">
<a href="#" style="color: #ffffff!important;">aa</a>
<a class="delete deleteTestCase_h"></a>
</li>
</ul>
</div>
预期的值
答案 0 :(得分:2)
您需要find()
而不是closest()
和text()
而不是val()
。你想找到事件来源的元素后代查找将获得后代,而另一方面是最近的祖先。
val()
用于textbox
,checkbox
等输入元素。您需要html或文字作为div
,span
,{{ 1}}等等。
<强> Live Demo 强>
a
要获取下一个元素,您可以使用eq(index)或next
<强> Live Demo 强>
alert($(this).find('a').text());
答案 1 :(得分:1)
在您的上下文中此是 li 元素,您可以编写@Adil建议的代码或使用 e.target 这是元素导致事件触发(在这种情况下是您需要的锚标记)。
HTML:
<div class="testcaselist_row">
<ul>
<li id="tc_1" class="clickTestCaseRow">
<a href="#">aa</a>
<a class="delete deleteTestCase_h"></a>
</li>
</ul>
</div>
JS:
$(document).on('click', '.clickTestCaseRow', function (e) {
var clickId = this.id;
console.log($(e.target).text());
});
答案 2 :(得分:0)
用于查找 first()标记, text()获取内容
first()首先返回li标签内的标签
请参阅文档http://api.jquery.com/first/
alert($(this).first('a').text());// getting undefine
OR
alert($('.clickTestCaseRow a').first().text());// getting undefine
答案 3 :(得分:-1)