如何准确地打破80个字符的文本?

时间:2012-10-08 10:57:36

标签: html jsf textarea

在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

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

1 个答案:

答案 0 :(得分: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
}

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

<强> Working DEMO