如何使用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