0

我想使用 javascript 更改链接的文本。问题是这个特定的链接没有 id。我无法更改 html,因为这是一个 SharePoint 页面,并且此特定链接是由我无权访问的页面布局创建的。使用 IE Developer Tools,我看到链接周围的 HTML 是这样的:

<span id="DeltaPlaceHolderPageTitleInTitleArea">                   
<span>
    <a href="#ctl00_PlaceHolderPageTitleInTitleArea_ctl00_SkipLink">
        <img width="0" height="0" style="border-width: 0px;" alt="Skip Navigation Links" src="" /></a>
    <span>
        <a title="State-Compliance" href="/sites/tax/Compliance/SitePages/State-Compliance.aspx">State-Compliance</a>
    </span>
    <a id="ctl00_PlaceHolderPageTitleInTitleArea_ctl00_SkipLink"></a>
</span>

我希望更改的链接是第二个链接,即工具提示带有“State-Compliance”的链接。我查看了 jQuery,发现我可以使用$('#DeltaPlaceHolderPageTitleInTitleArea').find("a").text("Test");它来更改文本,但它会更改所有三个链接的文本。我怎样才能只改变一个?我是否需要遍历这三个,或者是否有更简单的方法来获取我希望更改的链接?
抱歉,如果这是一个愚蠢的问题,我是 ac# 开发人员,这是我第一次使用 javascript。

如果您需要更多信息,请与我们联系。

沃伦

4

2 回答 2

1

这个怎么样,使用属性等于选择器

$('#DeltaPlaceHolderPageTitleInTitleArea a[title="State-Compliance"]')
于 2013-10-25T18:36:33.540 回答
1

使用.eq()

$('#DeltaPlaceHolderPageTitleInTitleArea').find("a").eq(1).text("Test");

jsFiddle 示例

于 2013-10-25T18:35:24.963 回答