我已经看到有关此主题的其他问题,在这里以及其他网站,但我一直无法找到解决方案。我正在使用TinyMCE来允许用户输入格式化文本。有一个保存按钮,它使用JQuery进行Ajax调用,并将textarea内容上传到服务器,在服务器中将它作为html存储在数据库中。TinyMCE显示html标签
之后,当用户回到页面时,我想显示他们之前输入的格式化文本。所以,当页面加载时,html存储在DataTable的隐藏列中。 TinyMCE textarea在页面加载时不存在,当用户单击按钮时,它使用JQuery动态构建。 JQuery脚本将隐藏表格单元格中的html复制到textarea中,我再次使用JQuery插件调用TinyMCE,将textarea转换为TinyMCE编辑器。
问题是TinyMCE编辑器显示保存的html,包括html标签。例如:
<p>Saved text</p>
我不希望它显示html标记,我希望它相应地设置文本的格式。我该如何解决?任何和所有的帮助表示赞赏。
我的JavaScript代码的缩写版本:
$('img').live('click', function() {
// Copy the html into the textarea.
$(this).closest('tr').next().find('textarea').val(gData[id].comments);
// Convert the textarea into an editor.
$(this).closest('tr').next().find('textarea').tinymce({
// Location of TinyMCE script
script_url : 'js/tiny_mce/tiny_mce.js',
theme : "simple"
});
}
实际上,它看起来像数据库中的数据是未编码的,但它在页面加载时得到编码,所以我通过在显示它之前解码客户端上的html来解决它。感谢您指点我正确的方向! – jg8273 2012-08-01 20:56:30
@ jg8273没问题^ _ ^乐意帮忙! – Neal 2012-08-01 20:59:03
@ jg8273我更新了我的答案以适合您的解决方案:-) – Neal 2012-08-01 20:59:54