IE下textarea去除回车换行符

在textarea中回车,会产生转义字符\r\n,有些时候我们不需要这两个转移字符,也就是清空textarea。下面的方法并不是清空,但是能够起到差不多的效果。

如果在textarea中按回车,内容提交之后,在textarea中会留下\r\n这两个转义字符,光标会在第二行。下面的程序通过alexa将焦点转出去,再通过onfocus="this.value=‘‘"这段代码,将光标拉回到textarea最开始处,这样就起到简易的清空效果广德县能源局

效果演示

程序代码

01 <textarea id="myTextArea" name="pl" rows="5" style="width:500px;"onkeypress="send(event)" onfocus="this.value=‘‘"></textarea><br />
02 <input id="showBtn" name="button" type="button" onclick="send_bet();"value="提交" />
03 <script>
04 function send_bet()
05 {
06     var myTextArea = document.getElementById("myTextArea");
07     myTextArea.value = ‘‘;
08     myTextArea.select();
09 }
10 function send(event) 
11
12     if(event.keyCode==13)  
13     {  
14         send_bet(); 
15         alert("提交成功");
16         myTextArea.value = ‘‘;
17         myTextArea.focus();
18     
19
20 </script>

如果习惯了写XML,也许会写下了这样的HTML代码:

1 <textarea name="test" cols="20" rows="4" />

结果是,textarea后面的HTML都当作内容出现在了文本域里面了。这是第一个搞笑的地方,不支持常见的标记结束方式;

接着,我给这个textarea加上了value="test"的属性值,事实上在文本域里面什么都看不到,但是我使用如下的Javascript语句却能改变文本域里面显示的内容:document.forms[0].test.value="test";这是第二个搞笑的地方了;

最后一个搞笑的地方是最夸张的了。通常在HTML中的空格都是会被忽略的,但是在textarea开始与结束的标签之间的空格都会照单全收进入到文本域中,作为textarea的默认输入了。由于我习惯了写HTML是喜欢将两个对应的标签写在两行的,结果就可想而知,不管怎么样,当我将焦点定位至TextArea文本域的时候,光标就是不在最左边显示,这还不太要紧,更要命的是,由于这些空格的存在,输入的内容还没有到文本域边沿的时候,就自动换行了,除非你将做为默认输入的空格全部删掉了。

时间: 2024-10-03 13:46:18

IE下textarea去除回车换行符的相关文章

关于(textarea)回车换行符在提交请求(URL)时消失的处理

关于(textarea)回车换行符在提交请求(URL)时消失的处理,有时候,我们在页面输入查询时,想多个同时查询,然后,回车隔开每个查询的内容. 后台只能收到字符串,没有回车换行符. 如下面的一个请求 window.location = "${ctx}/post/cusQueryMailExport?customerId="+customerId +"&postTimeStart="+postTimeStart+"&postTimeEnd=

java 去html标签,去除字符串中的空格,回车,换行符,制表符

public static String getonerow(String allLine,String myfind)     {                           Pattern pattern = Pattern.compile("<div class=\"row\">.*?</div>");                      Matcher  matcher = pattern.matcher(allLine

textarea 中的换行符问题

下面是我对这个问题的解决过程,最后算是完全搞懂了,真是阴沟里险些翻船 1.必须知道textarea中的换行符是 \n  (个人检测发现按回车键是\n,好像在linux下是\r\n) 2.用nl2br之前,请仔细看好手册解释,我就是搞郁闷了,一般都理解为将\n转换成<br >,其实不是的: 看php手册解释: nl2br –  Inserts HTML line breaks before all newlines in a string Returns string with ‘<br

C# 中的回车换行符

在 C# 中,我们用字符串 "\r\n" 表示回车换行符. string str = "第一行\r\n第二行"; 但是我们更推荐 Environment.NewLine(名称空间为 System),Environment 是类,NewLine 是字符串属性,用于获取当前环境中定义的回车换行符字符串. string str = "第一行" + Environment.NewLine + "第二行"; 在 Windows 环境中,

【转】去掉Sqlite3 数据库中的前后回车换行符(newline)

原文: http://www.blogjava.net/pts/archive/2013/06/10/400... 时间: 2013-06-10 转自:http://www.ityuedu.com/article/26601034478/;jsessionid=546A853CF3B219B9A242C75E039CB846 最近使用rails 做了一个小小的小网站, 数据库用的是sqlite3, 数据库数据是从一个xml 文件中导入的, 有很多前导回车和末尾空行, 而页面显示的时候会自动把回车

Java中的回车换行符/n /r /t

'\r'是回车,'\n'是换行,前者使光标到行首,后者使光标下移一格.通常用的Enter是两个加起来.下面转一篇文章. 回车和换行 今天,我总算搞清楚"回车"(carriage return)和"换行"(line feed)这两个概念的来历和区别了. 在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符.但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符.要是在这0.2秒里面,又有

字符串输入逆序输出(回车换行符)

DATA SEGMENT DB 512 DUP('$') ;定义可输入的字符个数 BUF DB '$' CRLF DB 0DH,0AH,24H ;回车换行符 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV BX,OFFSET BUF ;指针指向待显示字符串尾部 AGAIN: MOV AH,01 ;输入字符 INT 21H CMP AL,0DH ;是回车吗 JE DISP ;是,转显示 D

【杂记】C#中的回车换行符

在 C# 中,我们用字符串 "\r\n" 表示回车换行符. 如: string str = "第一行\r\n第二行"; 但是我们更推荐 Environment.NewLine(名称空间为 System),Environment 是类,NewLine 是字符串属性,用于获取当前环境中定义的回车换行符字符串. 如: string str = "第一行" + Environment.NewLine + "第二行"; 注意:在 Win

菜鸟教程之工具使用(八)——EGit禁止自动转换回车换行符

众所周知,Windows和Linux系统的回车换行是不一样的.想要进一步了解它们的可以阅读下面的介绍,不感兴趣的可以直接跳过. 产生背景 关于"回车"(carriage return)和"换行"(line feed)这两个概念的来历和区别.在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符.但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符.要是在这0.2秒里面,又有新的字符传过