6

A 有一个最长可达 100 个字符的字符串。有没有一种简单的方法可以每隔 10 个字母在单词中插入换行符?例如:

aaaaaaaaaaaaaaaaaaaaaaaaa

应该转为

aaaaaaaaaa<br/>aaaaaaaaaa<br/>aaaaa

我知道我可以使用 html() 方法修改 html,但我不确定如何计算字符数和插入标签。谢谢

4

3 回答 3

11

这是一种选择:

string.match(/.{1,10}/g).join("<br/>");
于 2012-05-29T12:06:51.897 回答
1

假设文本在 div 或 span 内:

<div id="myDiv">aaaaaaaaaaaaaaaaaaaaaaaaa</div>

你可以做:

$(function() {
    var html=$('#myDiv').html();
    var newHtml='';
    for (var i=0;i<html.length;i++) {
        newHtml=newHtml+html[i];
        if ((i+1)%10==0) {newHtml=newHtml+'<br/>';}
    }
    $('#myDiv').html(newHtml);
});

这是示例:http: //jsfiddle.net/68PvB/

祝你好运!

于 2012-05-29T12:09:40.820 回答
0

如果您将字符串放在变量中,则可以使用它的replace方法,如下所示:

var chunklen = 2;      //the length of the chunks you require
var str = '123456789'; //your string
var rxp = new RegExp( '(.{'+chunklen+'})', 'g' );

var str2 = str.replace( rxp, '$1<br/>' );

console.log( str2 );   //12<br/>34<br/>56<br/>78<br/>9
于 2012-05-29T12:08:15.817 回答