使用jquery我试图在点击第一个锚链接后面的链接后从锚链接中获取.text()。两个链接中没有一个类,但是有一个列表。结构是:
<ol id="articles">
<li>Author name <a href="">Title of article</a> | <a href="" id="button1">link B</a></li>
<li>Second author name <a href="">Second title of article</a> | <a href="">link C</a></li>
</ol>
结果将是: 点击&#34;链接B&#34;警报会说,&#34;文章标题&#34; 点击&#34;链接C&#34;警报会说,&#34;文章的第二个标题&#34;
到目前为止我所拥有的是:
$(document).ready(function(){
$("#articles a").click(function(){
var text = $(this).text();
alert(text);
});
});
但这只是给我链接点击的文本。我需要点击链接之前的链接文本。有什么建议让我走上正确的道路吗? 谢谢。
答案 0 :(得分:1)
您可以使用a
选择最后li
全部#articles li a:last-child
,然后使用prev()
选择之前的a
。浏览jQuery的traversing DOM方法,了解哪些操作可供您使用。
$(document).ready(function() {
$("#articles li a:last-child").click(function(e) {
e.preventDefault();
var text = $(this).prev('a').text();
alert(text);
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<ol id="articles">
<li>Author name <a href="">Title of article</a> | <a href="" id="button1">link B</a>
</li>
<li>Second author name <a href="">Second title of article</a> | <a href="">link C</a>
</li>
</ol>
&#13;