找到所选元素的最近链接

时间:2016-02-10 12:57:38

标签: javascript jquery html css css3

这是我的HTML:

<div class="action">
    <input type="text" id="StudentName" />
    <div></div>
    <div></div>
    <input type="text" id="item1" />
    <input type="text" id="item2" />
    <a href="#">yahoo</a>
    <input type="text" id="item3" />
    <a href="#">gmail</a>
    <input type="text" id="item4" />
    <a href="#">facebook</a>
</div>

我想为我的选择器找到最近的链接<a></a>。我试过这个:

$("#StudentName").closest('a')

什么是正确的方法?

3 个答案:

答案 0 :(得分:1)

试试这个:

$("#StudentName").siblings('a:first').html('yahooo');   

答案 1 :(得分:0)

您可以按照@georg的建议使用$('#StudentName').parent().find('a:first')。这将找到第一个a,它是父元素的子元素。 您也可以使用$('#StudentName').siblings('a:first'),它会在同一个DOM级别中找到第一个。

答案 2 :(得分:0)

  

我想在链接中更改名称yahoo,例如yahoo.com到abc.com

在调用siblings进行更改之前,

在文字上使用filter,然后使用text

$('#StudentName').siblings('a').filter(function() {
  return $(this).text() == 'yahoo';
}).text('abc.com')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="action">
  <input type="text" id="StudentName" />
  <div></div>
  <div></div>
  <input type="text" id="item1" />
  <input type="text" id="item2" />
  <a href="#">yahoo</a>
  <input type="text" id="item3" />
  <a href="#">gmail</a>
  <input type="text" id="item4" />
  <a href="#">facebook</a>
</div>