如何使用jQuery的.each()来替换文本/正则表达式?

我有这样的代码就在这里:如何使用jQuery的.each()来替换文本/正则表达式?

var tweetText = $("#tweet_text").text(); 

var replaced = replace(tweetText);

document.getElementById("tweet_text").innerHTML = replaced;

它从一个文本元素的文本,并突出提到和URL,使他们点击。 这里是replace()代码:

function replace(text) { 

return text.replace(/([@#])([a-z\d_]+)/ig, function(_, marker, tag) {

if (marker === "@")

return '<a href="?r=site/twitterprofile&q=$1">' + "@" + tag + '</a>';

return '<a href="?r=site/hashtag&q=$2">' + "#" + tag + '</a>';

});

}

我的div /鸣叫的一个长长的清单,当我运行replace()它仅适用选配功能一个格的格局。 为了解决这个问题,我想使用.each()来收集所有的#tweet_text div,然后在循环遍历时应用replace()函数。

请问有人能帮我做吗?

回答:

$('.your-tweet-class').each(function() { 

$(this).text(replace($(this).text()));

});

您可以删除空格,我只是为了清楚起见而放入它们。

回答:

您可以按如下所示使用html()

设置中的每个元素在匹配元素集中的HTML内容。

$('.tweetClass').html(function(index, oldHtml) { 

return replace(oldHtml);

});

以上是 如何使用jQuery的.each()来替换文本/正则表达式? 的全部内容, 来源链接: utcz.com/qa/266389.html

回到顶部