2012-01-03 82 views
2

我有一个在页面上运行的TinyMCE实例,可以让我编辑现有的帖子。我查询数据库,并用存储的文本填充变量$content。然后,我有以下的HTML:TinyMCE在隐藏textarea之前没有从textarea中获取内容

<label for="content">Content:</label> 
<textarea name="content" class="post-content" rows="<?php echo $settings_rows; ?>" ><?php echo $content; ?></textarea> 

TinyMCE的是显示作为一个编辑,没有问题,但不显示存储在$content文本。没有外围的<p>标签,并且$content变量正在填充(我在文本区外确认了它,并且Firebug显示隐藏的textarea也被填充)。

编辑器初始化如下:

tinyMCE.init({ 
      mode : "textareas", 
      theme : "advanced", 
      plugins : "advimage", 
      theme_advanced_buttons1 : "bold,italic,underline,strikethrough,sub,sup,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,fontselect,fontsizeselect", 
      theme_advanced_buttons2 : "cut,copy,paste,pastetext,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,|,image,hr,removeformat,visualaid,charmap,code", 
      theme_advanced_buttons3 : "", 
      theme_advanced_toolbar_location : "top", 
      theme_advanced_toolbar_align : "left", 
      theme_advanced_resizing : true, 
      editor_selector : "post-content" 
    }); 

谁能告诉我这是为什么不工作?我已经在其他页面上使用它,使用这个确切的系统,没有一个困难。

编辑

作为P.S.相关CSS如下:

.post-content { 
padding: 3px 10px; 
width: 90%; 
} 
+0

不张贴此作为回答,因为它并不能解决问题出现的原因,但在调试时我剪掉了textarea的类字段,这意味着它不再是TinyMCE的目标。这使它成为一个普通的textarea,内容很好。然后我粘贴了类字段,重新加载,并加载了TinyMCE编辑器 - 这次内容完好无损。这个页面曾经被加载过多次,有和没有TinyMCE,所以我仍然不知道是什么导致了这个问题,以及这个问题是否会返回。 – Eamonn 2012-01-03 19:17:16

回答

3

请尝试以下操作。给你的textarea的id为“editor1”,用mode: "exact",代替mode: "textareas", 和初始化编辑器下面的方式(保持TinyMCE的初始化它是现在,但在此之前以下行)

$(document).ready(function() { 
    tinyMCE.execCommand('mceAddControl', false, 'editor1'); 
} 
+0

不错 - 似乎已经稳定下来了,非常感谢! – Eamonn 2012-01-04 11:46:15

+0

很高兴能够提供帮助 – Thariama 2012-01-04 11:54:31