主题: 获取html内容不准确
作者: sanfran, 发布日期: 2011-08-19 14:11:06, 浏览数: 3141

操作系统: Windows 2003


浏览器: IE8


KindEditor版本: 4


BUG再现步骤:
1.在所见所得模式下有如下内容:aaaaaaa回车bbbbb(回车就是有一个换行的意思,在源代码状态下有个<br />),在源代码状态下和在所见所得状态下获取的HTML不一样。我length了一下,发现源代码状态下,是准确的。但是在所见所得模式下,length少一个字符。

测试过程是这样的,在网站的文章编辑功能下,将内容加载进编辑器,同时将内容写进一个隐藏的textarea,并且没有做任何更改,点提交编辑 后,观察了一下editor.html()的长度和textarea里文本的长度,不一样,编辑器里的少一个。把编辑器切换到源代码状态,长度相同。

作者: Roddy, 发布日期: 2011-08-19 18:21:06
您好,我在beta版本上用IE8测试没发现问题,请用beta版本确认一下。
回复
作者: sanfran, 发布日期: 2011-08-19 20:27:16

换成beta版了。似乎还是一样啊。

回复
作者: sanfran, 发布日期: 2011-08-19 20:57:32

看这2张图,编辑器的内容没有经过任何改动,:

对话框上上面的数字是编辑器内的内容的长度

下面的是我另外加了个textarea存储原始数据里的内容,它的长度。

 

 

第1张,所见所得模式下获取,编辑器的内容长度比原始数据的长度少一个。

http://www.pc0634.com:81/uploadfile/2011/0819/111111.jpg

 

 [在浏览器地址栏输入图片地址打开看,不要点这个链接,要不然打不开,防盗链了]

 

第2张,源代码模式,长度相同。一切正常

 http://www.pc0634.com:81/uploadfile/2011/0819/2222222.JPG

回复
作者: sanfran, 发布日期: 2011-08-19 20:59:48
Roddy啊,把上传图片的权限放开吧。不能上传图片很麻烦。还得去别的地方发图来这里用。还防盗链
回复
作者: sanfran, 发布日期: 2011-08-19 21:05:51

那个$1又出现了。

是这样,比如源代码中内容现在是

aaa<br />bbb

在源代码模式下把其中的一个b删除,在源代码模式下提交,js获取html内容的时候,就发现有$1了。

不论是在何种模式下删除,只要是在所见所得模式下提交,就不会出现,一切正常。

 

获取编辑器的内容是这样:

 var content=(editor.html());
 alert(content);

 

该问题最早提出在这里http://www.kindsoft.net/view.php?bbsid=4&postid=3558&pagenum=1

 

同样是IE8,我在这里测试没有这个问题。

我的服务器环境是iis6.0 win2003 IE8

回复
作者: sanfran, 发布日期: 2011-08-20 08:01:35

ccc<br />

ccc

 

这段代码,在编辑器里获取之后其length是13

如果把这代码放在textarea里,然后JS获取其length是14

 

不知道哪个是对的.

获取长度没有用函数,就用的原生的JS

回复
发表新帖 发表回复