`

js中的replace问题和textarea回车符问题

阅读更多
在textarea中输入回车符 在js读取textarea中的值有\r\n然后到业务层转换到string中就有可能变成空格形式然后被存入数据库,当在取出此值的时候则会变成空格的形式,因此我们需要将不显示的\r\n替换一下。

  在js取textarea的时候:

  如果用

var str = document.getElementById("textarea").value;
str = str.replace("\r\n","<br>");

  则只会将第一个\r\n替换成<br>,如何将所有n个\r\n替换成<br>呢?难道要无限个replace吗?

  其实不用,replace可以和正则表达式结合,一次替换所有的\r\n。

var reg=new RegExp("\r\n","g");
str= str.replace(reg,"\r\n");

  这样str中所有的\r\n就替换成<br>了.然后可以将其存入数据库。

  在取出的时候 只用将值在替换回来即可

var reg=new RegExp("<br>","g");
stt= str.replace(reg,"\r\n");
document.getElementById("textarea").value=str;

  更加详细的分析和应用可以参考JavaScript的replace方法与正则表达式结合应用讲解

  下面是我写的2个函数 直接放到通用包中 以后使用可以替换

function replaceTextarea1(str){
var reg=new RegExp("\r\n","g");
var reg1=new RegExp(" ","g");

str = str.replace(reg,"<br>");
str = str.replace(reg1,"<p>");

return str;
}


function replaceTextarea2(str){
var reg=new RegExp("<br>","g");
var reg1=new RegExp("<p>","g");

str = str.replace(reg,"\r\n");
str = str.replace(reg1," ");

return str;
}
分享到:
评论

相关推荐

    textarea换行符

    当用户在`textarea`中按下回车键时,浏览器会将其识别为换行符(`\r\n`),这在JavaScript读取`textarea`的值时也会体现出来。然而,在后续的数据处理过程中,例如在业务逻辑层将这些值转换成字符串形式并存储到...

    textarea去除多余空格和回车的方法及其属性

    在JavaScript中,可以使用`trim()`、`replace()`等方法来去除`textarea`中的多余空格和回车。例如,以下代码会在用户提交表单时去除首尾空格和回车: ```javascript document.getElementById('myForm')....

    处理textarea换行空格

    默认情况下,当用户在`textarea`中按下回车键时,浏览器会插入一个`\n`(换行符)来表示新行。对于空格,连续的多个空格在HTML渲染时会被合并为一个空格。在后端处理或存储这些数据时,可能需要进一步的转换。 1. *...

    把textarea中字符串里含有的回车换行替换成<br>的javascript代码

    为了在textarea中替换掉所有的回车和换行符,可以使用JavaScript的正则表达式配合`replace`方法。正则表达式中的`/g`标志表示全局匹配,意味着会替换掉所有符合条件的字符。对于`\n`或`\r\n`,可以分别用`/\n/g`和`/...

    Textarea处理

    本文将深入探讨如何通过JavaScript处理`textarea`中的换行与空格问题,以实现更加友好的用户体验和数据管理。 ### 处理换行 在HTML中,`textarea`元素用于多行文本输入控件,它接受用户的自由格式文本输入。然而,...

    关于textarea文本转为html即回车换行

    总结起来,将`textarea`中的文本转换为HTML,以便保留回车换行,关键在于使用正则表达式或字符串的`Replace`方法替换换行符为` `标签。在处理跨平台的文本时,务必考虑`\r\n`和`\n`两种情况。正确实现这一功能,...

    关于textarea提交的内容无法换行的解决办法

    正则表达式在 JavaScript 中有着广泛的应用,不仅在 `replace()` 函数中,还可以在其他字符串函数如 `match()`、`search()` 和 `split()` 中。对于更复杂的文本处理需求,了解正则表达式的规则和用法是非常有益的。 ...

    jQuery替换textarea中换行的方法

    这里使用了正则表达式中的\r和\n来匹配可能存在的回车符(\r)和换行符(\n),确保各种操作系统环境下换行的兼容性。修饰符g保证全局替换,修饰符i保证正则表达式不区分大小写。 最后,文章提到使用alert()函数来显示...

    HTML里面Textarea换行问题总结

    当用户在`textarea`中输入文本时,他们可以按下回车键进行换行,这些换行在浏览器中通常会以` `标签的形式呈现,以便在页面上正确地显示文本。然而,对于数据的传递和存储,特别是当数据需要在不同的`textarea`...

    JS替换文本域内的回车示例

    6. **`replace()`方法**:`s.replace(//n|/r/g,"")`使用`replace()`方法,将文本中的所有回车符和换行符替换为空字符串(即删除它们)。第一个参数是正则表达式,第二个参数是替换后的字符串。 7. **更新文本域值**...

    textarea 在IE和FF下换行无法正常显示的解决方法

    在IE中,换行通常是通过`\r\n`(回车+换行)来识别的,而在Firefox和大多数现代浏览器中,换行则是通过`\n`(换行)来识别的。当这些文本被显示在页面上而不是直接在`textarea` 中时,浏览器通常不会解析这些换行符...

    如何在textarea文本输入区内实现换行

    在默认情况下,`<textarea>`中的文本在显示时不会自动换行,这意味着如果你想要在textarea中实现换行,需要使用特定的字符序列来指示新的行开始。 在文本编辑器或者邮件客户端中,我们通常使用`\n`(也称为LF,Line...

    textarea是否自动换行

    另外,`<textarea>`中的换行符通常为`\n`(新行),但这些换行符在显示时可能不会立即生效,除非在JavaScript中使用`innerHTML`或类似方法来更新textarea的内容,并且需要确保这些换行符在插入时能够被正确解析。...

    textarea中的手动换行处理的jquery代码

    其中,通过使用JavaScript中的正则表达式替换功能(`String.prototype.replace`),可以将输入文本中的所有换行符替换为` `标签。这样,当文本内容被动态显示在网页上时,` `标签会被浏览器识别为换行,从而...

    解决js正则匹配换行问题实现代码

    1. `([\n\r])`:这部分表示匹配换行符,其中`\n`是换行符(LF),`\r`是回车符(CR),在Windows系统中,通常会用`\r\n`表示新行,而在Linux和Mac系统中则通常只使用`\n`。在正则表达式中,它们可以单独匹配一个换行...

    javascript innerHTML使用分析

    在处理textarea多行输入框的情况时,当输入a[回车]b,Chrome和IE都会将回车符解释为换行符(\n),不过在IE中,HTML输出会将换行符表现为\r\n。这一行为差异反映了浏览器对回车符的解析差异。同时,该文档还提到了在...

    jquery 插件实现多行文本框[textarea]自动高度

    1. 当用户在`<textarea>`中按下回车键换行时,文本框会自动增加一行的高度。 2. 当用户删除一行内容时,文本框的高度会相应地自动减少。 这个插件的实现依赖于jQuery库,因此需要在项目中引入jQuery。然而,作者...

Global site tag (gtag.js) - Google Analytics