Javascript 创建文件上载按钮时出现ckeditor错误

Javascript 创建文件上载按钮时出现ckeditor错误,javascript,jquery,ckeditor,fckeditor,Javascript,Jquery,Ckeditor,Fckeditor,我正在使用下面的代码创建一个ckeditor插件来上传图像。当我试图创建一个ckeditor对话框时,我发现了以下错误。下面是我从下面的链接中获取的一段代码。 镀铬: 未捕获的TypeError:无法读取未定义的 在firefox中: b、 getContentElement。。。是未定义的 任何帮助都将是巨大的 { type : 'file', id : 'upload', label : 'Select file from your computer', s

我正在使用下面的代码创建一个ckeditor插件来上传图像。当我试图创建一个ckeditor对话框时,我发现了以下错误。下面是我从下面的链接中获取的一段代码。

镀铬:

未捕获的TypeError:无法读取未定义的

在firefox中:

b、 getContentElement。。。是未定义的

任何帮助都将是巨大的

{
    type : 'file',
    id : 'upload',
    label : 'Select file from your computer',
    size : 38
},
{
    type : 'fileButton',
    id : 'fileId',
    label : 'Upload file',
    'for' : [ 'tab1', 'upload' ],
    filebrowser : {
        onSelect : function( fileUrl, data ) {
            alert( 'Successfully uploaded: ' + fileUrl );
        }
    }
},

我认为你所拥有的并不是代码本身。只是在对话框中初始化按钮时必须执行的对象定义,如粘贴的文档所示:

这个类实际上不是API的一部分。它只是说明了 开发人员可用于定义和创建按钮的属性

打开对话框后,所创建的元素将成为 CKEDITOR.ui.dialog.button对象,可以通过 CKEDITOR.dialoggetContentElement。有关对话框的完整示例,请参见 定义,请检查CKEDITOR.dialog.add

然后,如果我们检查:

我们将找到以下代码:

CKEDITOR.dialog.add( 'testOnly', function( editor ) {
    return {
        title:          'Test Dialog',
        resizable:      CKEDITOR.DIALOG_RESIZE_BOTH,
        minWidth:       500,
        minHeight:      400,
        contents: [
            {
                id:         'tab1',
                label:      'First Tab',
                title:      'First Tab Title',
                accessKey:  'Q',
                elements: [
                    {
                        type:           'text',
                        label:          'Test Text 1',
                        id:             'testText1',
                        'default':      'hello world!'
                    }
                ]
            }
        ]
    };
} );
然后,似乎需要使用准备的对象调用方法CKEDITOR.dialog.add。无论如何,我没有检查对象中的所有数据和格式。这个示例应该可以工作

无论如何,你应该检查并确定哪一个是你需要的对话框/插件


希望对您有所帮助。

您试过什么吗?你解决了吗?@AlejandroTeixeiraMuñoz我解决了。在“for”中有两个值“tab1”和“upload”。这里的“tab1”是由这些按钮组成的父选项卡的id,“upload”是用作上传按钮的按钮的id。但是我为选项卡分配了不同的id。我已将该选项卡的id指定为“customtab”,但在这里我将其称为“tab1”。所以它应该像'for':['customtab','upload']。