不同浏览器对于textarea中换行符的处理

不同浏览器对于textarea中换行符的处理
今天在做一些表单提交,涉及到textarea中的换行,因为填入的内容是Base64编码之后的结果(规范规定,Base64编码结果中每76个字符需要加上一个回车换行,即一个"\r\n"),在IE下测试,一切OK,但是到了Firefox和谷歌浏览器下,总是提示错误,细查一下,发现不同浏览器对于换行符处理不同造成的。
  • 在IE下,换行符传入\r\n
  • 在Firefox和谷歌浏览器下,换行符只传入了\n
因为后台程序默认是按照\r\n处理的,所以字符串就不匹配了。
解决办法:如果发现传入的字符串只有\n,没有\r\n,则用正则表达式将\n替换成\r\n,然后再进行业务处理即可。

附:ASCII表
十六进制
高三位
0X0
0X1
0X2
0X3
0X4
0X5
0X6
0X7
二进制
000
001
010
011
100
101
110
111
低四位
0X0
0000
0NUL
16 DLE
32SP
480
64@
80P
96 `
112p
0X1
0001
1 SOH
17 DC1
33!
491
65A
81Q
97a
113q
0X2
0010
2 STX
18 DC2
34"
502
66B
82R
98 b
114r
0X3
0011
3ETX
19 DC3
35#
513
67C
83S
99 c
115s
0X4
0100
4 EOT
20 DC4
36$
524
68D
84T
100d
116t
0X5
0101
5 ENQ
21 NAK
37%
535
69E
85U
101e
117u
0X6
0110
6 ACK
22 SYN
38&
546
70F
86V
102f
118v
0X7
0111
7BEL
23 ETB
39'
557
71G
87W
103g
119w
0X8
1000
8BS
24 CAN
40(
568
72H
88X
104h
120x
0X9
1001
9HT
25 EM
41)
579
73I
89Y
105i
121y
0XA
1010
10LF
26 SUB
42*
58:
74J
90Z
106j
122z
0XB
1011
11 VT
27ESC
43+
59 ;
75K
91[
107k
123{
0XC
1100
12 FF
28 FS
44,
60 <
76L
92\
108l
124|
0XD
1101
13CR
29 GS
45-
61=
77M
93]
109m
125}
0XE
1110
14 SO
30 RS
46.
62>
78N
94^
110n
126~
0XF
1111
15 SI
31 US
47/
63?
79O
95_
111o
127DEL
































如:
\r对应的ASCII码为10,表示换行
\n对应的ASCII码为13,表示回车

参考:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值