1

这是我的代码,这条消息来自动态

<div class="left">6 item(s) - Page 1 of 3 </div>

需要改变

<div class="left"> <span>6</span> item(s) - Page <span>1</span> of <span>3</span> </div>

任何的想法 ?

4

4 回答 4

2
var div = $('.left');
div.html(div.html().replace(/(\d+)/g, '<span>$1</span>'));
于 2012-06-06T06:15:55.903 回答
1

用“空格”分割文本。您将获得项目数组。拿索引,我想它总是一样的,并在上面加上你的“跨度”。

于 2012-06-06T06:10:57.480 回答
1

这对我有用。我只是检查一个单词是否是一个数字。如果是的话,我把它包在一个span

var left = $('.left');
var html = left.html().split(' ');
for(var i=0,len=html.length;i<len;i++){ 
    if(!isNaN(html[i]) && html[i]!=''){
        html[i] = '<span>' + html[i] + '</span>';
    }
}
left.html(html.join(' ')); 
于 2012-06-06T06:26:19.273 回答
1

使用 jQuery 自带的隐式循环来重置每个匹配元素的 html。

​$(".left").html(function(i,v){
    return v.replace( /(\d+)/g, "<span>$1</span>" );
});​​

小提琴:http: //jsfiddle.net/jonathansampson/gEYEE/

于 2012-06-06T06:30:07.833 回答