0

在 DB 部分提出这个问题并在这里提出这个问题后,这是我的问题:

我有一个问题,我有一个从数据库中读取的长文本。文本本身只是一个衬里。问题是它需要在 80 个字符处被打破,即使是在一个单词的中间。

如果下一个单词不适合剩余的字符,HTML 或其他语言将换行,这不是我想要的。这些页面是在 jsf 中完成的。

例如:

textarea= cols: 8 rows: 3

input= break these texts

normal:

break 
these
texts

what I need:

break th
ese text
s

关于如何做到这一点的任何想法?

4

1 回答 1

2

你可以使用下面的函数,只需将字符串(你想在每 80 个字符后刹车)传递给函数

function breakText(str)
{
  i=0;
  outputStr="";
  str= str.replace(/(\r\n|\n|\r)/g," ");

 while(i<str.length)
  {
   outputStr += str.substr(i,80) +"<br>"; // replace br with any line break you want
   i=i+80;
  }
  return outputStr
}

注意:此函数将替换所有换行符并<br>在每 80 个字符后插入一个

工作演示

于 2012-10-08T11:35:51.760 回答