javascript - jQuery .replaceWith 每个只有一次

标签 javascript jquery

遇到我写的东西的问题,jQuery 仍然不是很好,所以我不确定如何解决。

$("a[href=##]").replaceWith("<label>" + $("a[href=##]").text() + "</label>");

这将为我生成一个简单的标签,但我的问题是,如果我有多个 href 值为 ## 的链接,每个 链接的文本将填充 的标签所有实例。

例如,如果我有这个:

<a href="##">Foo</a>
<a href="##">Bar</a>

结果将是:

<label>FooBar</label>
<label>FooBar</label>

当我显然希望它是:

<label>Foo</label>
<label>Bar</label>

我尝试了一些方法,但似乎没有任何效果。我错过了什么?

最佳答案

试试这个:

 $("a[href=##]").each(function(){
    $(this).replaceWith("<label>" + $(this).text() + "</label>");
 });

Working Demo

关于javascript - jQuery .replaceWith 每个只有一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23222904/

相关文章:

jquery - 样式化 Jquery 移动面板

javascript - javascript 和 html 中的嵌套引号

jquery - 无法更改 JQuery Datepicker 属性

javascript - 将元素[数据]发布到服务器端的最佳方式

javascript - 文字伴侣 $TM_SELECTED_TEXT

jquery - 访问被拒绝。在 IE 中的 jquery.form.js 上

javascript - Grails:AJAX onSuccess方法未触发

javascript - jQuery 对话框在 Ajax 调用中未触发

javascript - Angular : Population of Radio button groups in loop(ng-repeat) - selection not working

javascript - 谷歌图表不会在顶部对齐