JQuery:按名称选择器设置第n个元素的属性

时间:2016-09-02 13:53:01

标签: jquery html jquery-selectors

拥有一组具有相同名称的“ a ”标记:

<a name="link" href="http://link1">
<a name="link" href="http://link2">
<a name="link" href="http://link3">

我需要使用$("['name=link']")选择器更改第三个元素的 href属性,但不能使用 prop / attr 方法。

1 个答案:

答案 0 :(得分:4)

我正在努力理解你的问题。

根据您的解释,我建议您尝试使用“:eq”jQuery Selector。代码将是这样的:

// eq takes element by index (from 0 to *) in the same 'root' of nodes in DOM structure
$("a[name='link']:eq(2)").attr('href', '__new value__');

以下是此功能的官方jQuery文档:https://api.jquery.com/eq-selector/

工作示例:

$(document).ready(function() {
  $("a[name='link']:eq(2)").attr('href', '__new value__');

  // checking the href value in the console
  console.log($("a[name='link']:eq(2)").attr('href'));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a name="link" href="http://link1">1st link</a>
<a name="link" href="http://link2">2nd link</a>
<a name="link" href="http://link3">3rd link</a>