Javascript 获取特定文本替换它并将其包装在span中?
我有以下htmlJavascript 获取特定文本替换它并将其包装在span中?,javascript,jquery,Javascript,Jquery,我有以下html这是一些内容。我想做的是让它变成这样:这是一些内容。要做到这一点,我知道我应该:1。获取我的特定文本(完成该操作…) 2。在span中包装我的文本(也这样做了…) 3。将我的文本替换为包含我的跨度的文本(尚未完成) 我的问题是第三步,我就是想不出来。那么,我如何才能用新文本替换我的“旧”文本呢?谢谢大家 我的代码如下所示: $(document).ready(function(){ //get the whole text var ptext = $(".get").text(
这是一些内容。
我想做的是让它变成这样:这是一些内容。
要做到这一点,我知道我应该:1。获取我的特定文本(完成该操作…)
2。在span中包装我的文本(也这样做了…)
3。将我的文本替换为包含我的跨度的文本(尚未完成) 我的问题是第三步,我就是想不出来。那么,我如何才能用新文本替换我的“旧”文本呢?
谢谢大家
我的代码如下所示:
$(document).ready(function(){
//get the whole text
var ptext = $(".get").text().split(" ");
var myText = ptext[2];
//alert(ptext[2])
//alert(myText);
if($('.get').text().contains(myText)){
//$('<span>'+myText+'</span>').appendTo($('.get'));
}
else{
alert('no text');
}
});
$(文档).ready(函数(){
//了解全文
var ptext=$(“.get”).text().split(“”);
var myText=ptext[2];
//警报(ptext[2])
//警报(myText);
如果($('.get').text()包含(myText)){
//$(''+myText+'').appendTo($('.get');
}
否则{
警报(“无文本”);
}
});
var word=“some”,
regex=newregexp(“\\b”+word+”\\b,“g”);
$(“.get”).html(函数(i,html){
返回html.replace(regex,“$&”);
});
演示:$('.get').html(函数(i,v){
返回v.替换('some','some');
});
$('.get').html($(“.get”).html().replace(“some”,“some”);
为什么需要正则表达式(除非实际的文本方式比示例更复杂)?如果你真的需要一个正则表达式,为什么不需要一个字面上的呢?@JosephSilber正则表达式提供了一个全局替换的可能性。此外,它对于单词检测更灵活……本例中没有。但即便如此,为什么不使用文字正则表达式呢?@JosephSilber当然是为了展示如何在不同的单词中使用它。最好使用.html
函数的arg函数来处理这个特定的情况。非常感谢您的回答…THX!!
var word = "some",
regex = new RegExp("\\b" + word + "\\b", "g");
$(".get").html(function(i, html) {
return html.replace(regex, "<span>$&</span>");
});
$('.get').html(function (i, v) {
return v.replace('some', '<span>some</span>');
});
$('.get').html($(".get").html().replace("some","<span> some </span>"));