CKEDITOR.replace()隐藏了我想要转换的textarea

时间:2010-09-14 13:51:26

标签: javascript jquery ckeditor

我正在使用Javascript创建一个我希望成为ckeditor的textarea。我的代码就像

var html = '<textarea name="text"></textarea>';
$('#mydiv').append(html);  
var textareas = document.getElementsByTagName('textarea');  
// Could be more than one textarea   
for (i = 0; i<textareas.lenght; i++) {  
    var textarea = textareas[i];  
    CKEDITOR.replace(textarea.name); 
}

当我运行此代码并检查输出时,textarea被隐藏。在firebug中检查它我得到的风格=“visibilty:hidden”。然而,删除这只是给我一个textarea而不是ckeditor。有没有人对如何解决它有任何建议。

将它作为一个div工作,但所有例子似乎都在textareas。

1 个答案:

答案 0 :(得分:1)

隐藏是正确的。因为<textarea/>没有所见即所得。 .replace()方法用它的wysiwyg编辑器替换<textarea/>。这就是它隐藏的原因。

  

CKEDITOR.replace(elementOrIdOrName, config)
  使用CKEditor实例替换 a或DOM元素(DIV)。 Source

正如您在documentation中所看到的,您不需要附加<textarea/>,而是可以直接使用您的div:

CKEDITOR.replace('mydiv')