最初的想法是换用htmleditor。但HtmlEditor也有问题。前端检验无法生效。
后来经过多种测试比较、分析,我认为这个问题是提交方式引起的。采用Ajax.request提交时会有前述问题,而form.submit则无碍于此。
但Form.submit仍有问题。当控件设定了emptytext时,submit会将该值提交到后台。
设想了两个折衷办法。一是只对必填项设置emptytext,使用form.submit来提交textarea。二是对在提交前对textarea的getValue()值做个处理,将其中的“\r\n”(ie下)或者“\n”(火狐下)替换成<br>;而读取时又将<br>替换回换行符。
后来采用了第二种方法。
现有的这个后台处理涉及的模块比较多,目前仍沿用折中办法中的第二个。以后的话,一定让框架自动拼这个json字符串。