我有自定义组件和模块的问题。在格式XML中我创建了这个字段
<field name="bio" type="editor" height="250" label="Biography"
description="Intro To The Artist" buttons="true" />
现在数据从数据库中正确加载。
我在视图$this->form->getInput('bio');
中使用此代码输出Wyswig编辑器和正确的html
但是当我保存时,表格。一切都按预期保存,除了,所有的html都被删除了。
我不知道这通常发生在哪里,即使我将XML添加到模块中(模块通常会处理所有渲染)。所有显示都很好,但HTML被剥离了。
Joomla wiki似乎不完整,我找不到有关如何解决此问题的有用信息。
由于
答案 0 :(得分:10)
在谷歌群组中找到了解决方案。我需要将filter="safehtml"
添加到字段
<field name="bio" type="editor" height="250" label="Biography" filter="safehtml"
description="Intro To The Artist" buttons="true" />
我相信这是Joomla 1.6特有的,另一个设置可能是filter="raw"
答案 1 :(得分:1)
您必须添加JREQUEST_ALLOWRAW参数才能保留HTML。
答案 2 :(得分:1)
要获取HTML表单发布数据,您需要以下列方式获取此数据
$data = JRequest::getVar( 'editorName', 'defaultValue', 'post', 'string', JREQUEST_ALLOWRAW );
需要为视图添加javascript(tmpl文件)
function submitbutton(action) {
var form = document.adminForm;
switch(action)
{
case 'save':
case 'apply':
<?php
$editor =& JFactory::getEditor();
echo $editor->save( 'editorName' );
?>
default:
submitform( action );
}
}