gpt4 book ai didi

javascript - 如果文本包含 :,则替换链接和文本

转载 作者:行者123 更新时间:2023-11-28 19:39:50 25 4
gpt4 key购买 nike

如果一些链接包含某些文本,我需要替换它们,每个链接的 URL 在主机站点上的服务器之间发生变化,所以我只能使用文本替换。在下面的html中,我需要找到包含“Rosters”和“Forums”的ul#hsubmenuitems,并将它们替换为2个新链接和URL路径

<div id="hsubmenu">
<ul id="hsubmenuitems">
<li></li>
<li></li>
<li><a href="#">Scoreboard</a>
</li>
<li><a href="#">Rosters</a>
</li>
<li><a href="#">Forums</a>
</li>
</ul>
</div>

更改为:

<div id="hsubmenu">
<ul id="hsubmenuitems">
<li></li>
<li></li>
<li><a href="#">Scoreboard</a>
</li>
<li><a href="NEW URL 1">NEW LINK 1</a>
</li>
<li><a href="NEW URL 2">NEW LINK 2</a>
</li>
</ul>
</div>

我目前正在使用 CSS 删除我不需要的链接,然后使用 jQuery 附加一个新链接,但我知道有一种更有效的方法,我只是不熟悉 jQuery 来弄清楚它。

$("#hsubmenuitems").append('<li><a href="NEW URL 1">NEW LINK 1</a></li>');

最佳答案

使用 :contain() 你可以这样做:

$("#hsubmenuitems a:contains('Rosters')").text('new link').attr('href', 'new href');
$("#hsubmenuitems a:contains('Forum')").text('new link').attr('href', 'new href');

欲了解更多ifo,http://api.jquery.com/contains-selector/

这是一个演示 http://jsfiddle.net/cepdmfLo/

记住将代码放入准备好的文档中。

更新target属性,与href版本非常相似。以下示例将目标属性设置为 _blank

$("element").attr('target', '_blank');

请参阅http://api.jquery.com/attr/了解更多信息

你可以链接整个事情

$("#hsubmenuitems a:contains('Rosters')").text('new link').attr('href', 'new href').attr('target', '_blank');

http://jsfiddle.net/cepdmfLo/2/ “花名册”新链接具有目标

关于javascript - 如果文本包含 :,则替换链接和文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25307671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com