2013-03-08 102 views
1

我有一个表格单元格,其值包含换行符,如下所示。使用nodeValue读取单元格内容时保留换行符

<td>Foo 
Bar</td> 

我读使用td.childNodes[0].nodeValue和传递值在Ajax请求的单元格内容。但IE8读取LF作为空间,使得“Foo%20Bar”被发送而不是“Foo%0ABar”。但是,在Chrome中LF保留。

是否有另一种方法来读取IE中的单元格,以便保留LF?

+1

也许.innerHTML? – nnnnnn 2013-03-08 11:05:26

+1

没有“本机”IE8测试,但在“模拟”IE8上,我发现'white-space'设置会影响最终的nodeValue。尝试在获取其nodeValue之前对其应用'white-space:pre-wrap'。 – Passerby 2013-03-08 11:11:26

+0

@nnnnnn与td.innerHTML相同的问题 – Somu 2013-03-08 11:18:23

回答

0

我认为你应该检测浏览器是否为IE,然后应用一个动作(也许将“%20”替换回“%0A”)。

+0

它应该是一个评论。 – VisioN 2013-03-08 11:08:06

+2

但是,这将取代行饲料的合法空间 – Somu 2013-03-08 11:08:58