我想打开以下html:
<div id="myText">Another hurricane is coming <a data-number="23">here</a>. And check out pictures <a data-number="43">here</a>.</div>
进入这个:
<div id="myText">Another hurricane is coming @[23]. And check out pictures @[43].</div>
我基本上试图获取每个“数据编号”值并将其放入方括号中,同时省略a-tags中的文本。
有关如何最好地解决这个问题的想法吗?
答案 0 :(得分:7)
您可以使用.replaceWith()
$('#myText').find('a').replaceWith(function(){
return "@["+ $(this).data('number')+"]";
});
您可以像评论中指出的@ColinDeClue一样使用.find('a[data-number]')
,以确保获得属性data-number
的锚点。
答案 1 :(得分:3)
使用
$(document).ready(function() {
$('#myText a[data-number]').each(function() {
var text = '@[' + $(this).data('number') + ']';
$(this).replaceWith(text);
});
});