2011-12-19 42 views
0

我在jsp页面上有一个dojo编辑器。 dojo编辑器是必填字段之一,我有一个适当的验证。有一种情况是一些标签被追加。在追加时我找不到特定的模式,但在编辑器上选择并复制所有内容和粘贴后发生的大部分时间。因此,在这种情况下,编辑内容为将标签添加到dojo编辑器内容

<div id="dijitEditorBody">content which user entered</div> 

问题:当用户删除其进入的标签仍然存在并得到提交的所有内容。在这种情况下ATLEAST视觉编辑器有没有内容,但该领域存在以下值:

<div id="dijitEditorBody"></div> 

<div id="dijitEditorBody"><br /></div> 

所以跳过验证并显示当数据从数据库中检索一个空的编辑器?

我很困惑为什么这些标签被追加? Actual data entered

Editor Content

+0

我不知道我明白...为什么你粘贴HTML代码到编辑器中? – Philippe 2011-12-19 18:07:00

+0

@Phillipe对于混淆,我很抱歉。我没有在编辑器中粘贴html代码。在这种情况下,“编辑器内容”正被复制并粘贴到编辑器中。这个内容没有这个div标签。但是在提交时我发现编辑器内容附加了一个div标签。我不确定这个div标签是从哪里来的。 – SJ11 2011-12-19 18:34:45

+0

你用什么版本的dojo? – Philippe 2011-12-19 18:42:29

回答

1

在RichText.js,这个片段:

if(dojo.isIE || dojo.isWebKit || (!this.height && !dojo.isMoz)){ 
     // In auto-expand mode, need a wrapper div for AlwaysShowToolbar plugin to correctly 
     // expand/contract the editor as the content changes. 
     html = "<div id='dijitEditorBody'></div>"; 
     setBodyId = false; 
    }else if(dojo.isMoz){ 
     // workaround bug where can't select then delete text (until user types something 
     // into the editor)... and/or issue where typing doesn't erase selected text 
     this._cursorToStart = true; 
     html = "&nbsp;"; 
    } 

解释为什么添加了这个标签的原因... 虽然你在alertbox看到它,我相信这不是存在于发布的内容中...对吗? 编辑应该照顾删除额外的标签=>未经测试,但非常确定...

+0

大多数情况下这个标签不存在。但在这种特殊情况下,div标签确实显示在警报箱中并插入到数据库中。 – SJ11 2011-12-19 20:06:35

+0

像这样在黑暗中拍摄有点困难...如果你曾经设法重现这个问题,请发布更多细节。如果你发布你的代码,Maybie会有一些帮助。 – Philippe 2011-12-19 22:15:36

+0

当然。感谢您的投入和努力。 – SJ11 2011-12-20 20:21:34

相关问题