如何以编程方式确定CKEditor实例的名称

Chr*_*isA 8 javascript ckeditor

我已经在我的ASP.NET页面的代码隐藏中以编程方式将CKEditor实例添加到了我的页面:

VB.NET:

itemEditor = New CkEditor
cell.Controls.Add(itemEditor)
Run Code Online (Sandbox Code Playgroud)

......工作正常.我可以在回发中获取HTML并使用它做一些事情.

但是,我也想用它做一些客户端的东西,特别是从另一个控件中取出一个选定的项目,并通过处理onchange事件将其插入到文本中.

那么,如何在JavaScript中获取编辑器实例的名称,以便我可以执行以下操作:

function GetCkText()
{
    var htmlFromEditor = CKEDITOR.instances['editorName'].getData();
    // do stuff with htmlFromEditor
}
Run Code Online (Sandbox Code Playgroud)

mcg*_*ilm 16

假设您只有一个编辑器实例:

for ( var i in CKEDITOR.instances ){
   var currentInstance = i;
   break;
}
var oEditor   = CKEDITOR.instances[currentInstance];
Run Code Online (Sandbox Code Playgroud)

这是JavaScript API关于实例的内容.

这是定义CKEditor的另一种方法.这里'fck'是输入字段id:

CKEDITOR.replace( 'fck', {
    customConfig : prefix + 'js/ckeditor/config.js',
    height: 600,
    width: 950
});

editor = CKEDITOR.instances.fck;
Run Code Online (Sandbox Code Playgroud)

请注意我是如何使用引用实例的.fck.