Jquery 更改链接的内部文本
我尝试了几种不同的方法: 我有动态菜单,填充父菜单和子菜单 我需要更改链接中的内部文本Jquery 更改链接的内部文本,jquery,Jquery,我尝试了几种不同的方法: 我有动态菜单,填充父菜单和子菜单 我需要更改链接中的内部文本 $("li:has('a'):contains('NAME1')").ReplaceWith('Name2'); $("li:has('a'):contains('NAME1')").text('Name2'); 所有这些似乎都不起作用,因为它们删除了完整的链接。我不想更改链接,只想更改 强化甜酒 您的代码应该可以工作: 给定html: <a href="somelink">Text<
$("li:has('a'):contains('NAME1')").ReplaceWith('Name2');
$("li:has('a'):contains('NAME1')").text('Name2');
所有这些似乎都不起作用,因为它们删除了完整的链接。我不想更改链接,只想更改
强化甜酒
您的代码应该可以工作:
给定html:
<a href="somelink">Text</a>
这很有效
您可能选错了选择器?发布更多的HTML 假设你有
<ul class="js-my-menu">
<li><a href="somelink">Name1</a></li>
</ul>
JSIDLE链接:
注意,类名中的
js-
前缀是突出显示类的最佳实践方法,这些类仅用作附加JavaScript行为的挂钩,不应用于样式设置。这提高了可维护性。假设您的HTML来自:
$(“li:has('a'):contains('NAME1'))。text('Name2')
几乎正确,但您选择了错误的元素(li
,而不是a
)
您只需执行以下操作:
$("li:contains('NAME 1') a").text('Name 2');
演示:
$(“li:contains('Name 1')a”).text('Changed text')
如果您想更改
的文本,那么为什么选择
?Hi Regent。谢谢你的回复。菜单在$(“li a:contains('NAME1'))。text('Name2')
如果您想查看NAME1
谢谢Juri。我的朋友,这很好用。感谢所有发帖子的人。干得好,伙计们,
<ul class="js-my-menu">
<li><a href="somelink">Name1</a></li>
</ul>
$('.js-my-menu').find('a:contains("Name1")').text('new text');
$("li:contains('NAME 1') a").text('Name 2');