在CKEditor中获取自定义fileBrowser的url

时间:2013-08-28 10:55:25

标签: php javascript ckeditor

这是我的自定义对话框代码:

 CKEDITOR.dialog.add('myDialog', function(editor) {
    return {
        title : 'Insert File',
        minWidth : 400,
        minHeight : 200,
        contents : [ {
            id : 'Upload',
            hidden : true,
            filebrowser : 'uploadButton',
            label : editor.lang.image.upload,
            elements : [ {
                type : 'file',
                id : 'upload',
                label : editor.lang.image.btnUpload,
                style : 'height:40px',
                size : 38
            }, {
                type : 'fileButton',
                id : 'uploadButton',
                filebrowser : 'info:txtUrl',
                label : editor.lang.image.btnUpload,
                'for' : [ 'Upload', 'upload' ]
            } ]
        } ],
    };
});

这是我的PHP代码:

<?php
require_once 'bootstrap.php';
require_once 'ckeditor/ckeditor.php';

$msg = '';
$callback = ($_GET ['CKEditorFuncNum']);
$image_url='http://www.google.com';
$output = '<script type="text/javascript">window.parent.CKEDITOR.tools.callFunction(' . $callback . ', "' . $image_url . '","' . $msg . '");</script>';
    die ( $output );
?>

每件事都运行正常,但我不知道如何在javascript端上传后获取Url。 例如,我想在javascript端完成php端后提醒$ url(http://www.google.com)。

1 个答案:

答案 0 :(得分:0)

最后我找到了解决方案。在服务器端,我使用此代码并调用父函数:

$output = "<script type='text/javascript'>window.parent.uploadMe('$image_url');</script>";

在客户端我使用此代码:

function uploadMe(url)
{
    alert(url);
}