将文本插入Joomla编辑器的文本区域

时间:2014-04-12 11:02:27

标签: joomla editor textarea

我无法在JFactory::getEditor()的文字区域插入文字。

$("textarea").val('some text');

无法更新我的文字区域。

如果我使用默认的<textarea>,它可以正常工作。

1 个答案:

答案 0 :(得分:3)

<?xml version="1.0" encoding="UTF-8"?>
<form>
   <fieldset addfieldpath="/administrator/components/com_categories/models/fields" >

        <field
                type="editor"
                name="myEditorField"
                id="myEditorField"
                label="MY EDITOR FIELD LABEL"
                description="MY EDITOR FIELD DESCRIPTION"
                width= "99%"
                rows="5"
                editor="desired|alternative"
                cols="200"
                buttons="true"/>
                <field name="articletext" type="editor" class="inputbox"
        label="COM_CONTENT_FIELD_ARTICLETEXT_LABEL"     description="COM_CONTENT_FIELD_ARTICLETEXT_DESC"
        filter="JComponentHelper::filterText" buttons="true" />

   </fieldset>


</form>

将上面的代码保存在editor.xml中,并使用以下php代码显示编辑器

<?php
        $mypath=  JPATH_COMPONENT.'/views/' .'createTask'. '/tmpl/editor.xml';
        $form = JForm::getInstance('myform',$mypath );
        echo $form->getInput('myEditorField');
?>

以下代码将回显javascript以设置编辑器内容

$editor =JFactory::getEditor();
$setContent=$editor->setContent($name,'hello');

$js1 = 'function setEditorText (){return '.$setContent.'}';
$doc=  JFactory::getDocument();
$doc->addScriptDeclaration($js1);  

了解详情click here

。 。 。

在JOOMLA编辑器中获取和设置内容的其他方法是使用以下js。

将您的编辑器包含在具有类.myPreviewEditor的div中 设置内容

$('.myPreviewEditor iframe').contents().find('body').html("i am in editor");

获取内容

$editoContent=$('.myPreviewEditor iframe').contents().find('body').html();

但请确保在JOOMLA编辑器加载后执行这些语句