textarea内部换行实现

当在使用textarea的时候,有一次需求,需要做到自定义换行,而不是通过textarea定宽来自动换行,其实在html中可以直接通过<br/>来换行,同时也想到用\n来实现换行,其结果是根本不鸟你。

<textarea cols="50" rows="5" id="textareaid">"adfsadfs<br/>fddsadfds \n dfadadf"</textarea>

百度几翻网上确实有说可以用\r\n去实现换行,如果只兼容微软系统的话直接\n即可,但是实验确实不行,后面想到是不是必须通过JS赋值才可以实现,于是出现如下代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <textarea cols="50" rows="5" id="textareaid">"adfsadfs<br/>fddsadfds \n dfadadf"</textarea>
    <script type="text/javascript">
    document.onclick=function(){
        alert(1);
        var str=‘5456455d4fgdfgdgdg \n dsfafdadfadfafa‘;
        document.getElementById("textareaid").value=str;
    }
    </script>

</body>
</html>

成功的实现了textarea换行,所以我推断,要想实现textarea换行,必须得动态JS赋值才行。

测试地址

注:百度上有说明要想实现兼容linux,unix,Mac OS,window,可以把\n换成\r\n,但我在苹果系统下用\n也实现了换行,linux,unix系统下没测试个人感觉,求解

个人知道有限,如有错误的地方还望指正,共同学习共同进步!

时间: 2024-10-24 15:29:00

textarea内部换行实现的相关文章

textarea placeholder 换行问题处理

APP中嵌入webview时  碰到的文字对齐需求  ----主测 chrome   firefox   safari 第一感觉就是直接在placeholder属性中写入 \n  <br> 之类的 ,然而并没什么用 网上查了下   各种说辞不一, 归纳总结如下: 有效方法列表: · 类似\n的解决方式   如: [1]  placeholder="Line 1    Line 2" [2]   placeholder="Line 1 Line2"    

textarea的换行符处理以及正确的在Html中显示

个人不太喜欢在页面做过多的逻辑处理,贴出java的处理方式 1 /** 2 * Html转换为TextArea文本 3 * @return 4 */ 5 public static String HtmlToText(String str) { 6 if (str == null) { 7 return ""; 8 }else if (str.length() == 0) { 9 return ""; 10 } 11 str = str.replaceAll(&qu

html textarea 获取换行显示

参考资料:http://www.cnblogs.com/zhenmingliu/archive/2011/12/27/2303931.html

HTML里面Textarea换行总结

近期碰到一个数据转来转去转到Textrea里面能否真正按行存放的问题,在这里总结一下: 问题描写叙述: 比方get数据到一个TextArea里面,如“AAA BBB”,想把这段文字在TextArea里面真正按行存放,而不是显示出来按行存放(所谓的真正按行存放就是,再把这个TextArea的数据post到另外一个页面的Textarea里面仍是按行存放) 问题解决1: 一開始是提交数据的时候格式是AAA<BR />BBB,可是这是显示换行,事实上在TextArea里面并非真正按行存放的,由于这个时

textarea 换行之间的转换

在操纵表单的时候,如果你在textarea输入的内容是换行的,如果没有进行相应的装换,你输出的内容是不会跟着一起换行的.如果后台返回给你的数据是带有<br />换行符的, 那么在textarea中显示的时候就会将<br />也显示出来.在其中用正则进行转换的话,就可以达到我们想要的效果.让textarea里面的换行内容输出的时候有换行显示,让后台返回的,带有<br />的内容也可以在textarea中换行显示,而不是显示<br />这个标签. 代码比较简单.

textarea 多行文本保存数据到DB,取出后恢复换行

Steps: 1.保存到数据库之前把textarea中的换行字符转换为<br>. var dbStr = textareaStr.replace(/\n|\r\n/g,"<br>"); 2.读取数据时把<br> 替换成textarea的换行符\n. var reg = new RegExp("<br>","g"); //创建正则RegExp对象 var newstr = dbStr.replace(

textarea文字换行保存到数据后读出来没有换行 解决方案

1.需要保存数据库之前把textarea中的换行字符转换为<br>存储到数据库. 2当读取的时候在把<br> 替换成textarea的换行符\n就好了 注意:使用replace 方法的时候需要用正则表达式,否则只能替换第一个换行 例如: str="你好啊: 亲爱的: 1.存储数据库之前执行 dbstr = str.replace(/\n|\r\n/g,"<br>"); 2.取值的时候用正则表达式: var reg=new RegExp(&q

php过滤textarea 中的换行符问题

之前我写的替换代码是这样的 $content = str_replace('\r\n', '', $_POST['content']); 为了确保window和Linux的换行符都能去掉,改成这样的: $content = str_replace('\r', '', $content); $content = str_replace('\n', '', $content); 运行的时候发现还是有问题,换行符没有被替换,然后开始百度textarea的换行符,和str_replace的用法,最后发现

html textarea换行和dom换行

从事开发已经两年多了,但是还是不会发现问题找原因,可能是自己一直在学校养成的习惯吧,不过最近在葛经理的带领下开始学会找原因了,而且发现自己变得更成熟了. 现在讲讲textarea和dom的换行吧,我们都知道dom换行是”<br />”而在textarea中换行是”\r\n”,如果你把textarea获取到的数据显示在dom中,当然就显示不了换行了,因为两者的换行符是不同的,这也是我在开发中遇到的这个问题,如何解决呢?很简单,叫我一声哥就可以了,呵呵,开玩笑的,解决方法如下: replace(/