/browser/browse.php?type=Images – filebrowserBrowseUrl参数的值
&CKEditor=editor2&CKEditorFuncNum=2&langCode=de – 由CKEditor:添加的信息。
CKEditor=editor2 – CKEditor实例名 (editor2),
CKEditorFuncNum=2 – 匿名函数的引用编号,将用于 callFunction中, o langCode=de – 语言编码(此例中: German). 此参数可以用于发送本地化的错误信息。
传递所选文件的URL
要从外部文件浏览器中传回文件的URL,调用CKEDITOR.tools.callFunction,并将CKEditorFuncNum作为第一个参数进行传递:
window.opener.CKEDITOR.tools.callFunction( funcNum, fileUrl [, data] );
如果data(第三个参数)是字符串,将由CKEditor进行显示。如果在文件上传时发生了问题,此参数通常作为错误信息显示。
例2
下面的例子说明了如何使用JavaScript代码从文件浏览器中传递URL:
//从查询字符串中获得参数的 Helper函数
function getUrlParam( paramName ) { var reParam = new RegExp( '(?:[\?&]|&)' + paramName + '=([^&]+)', 'i' ) var match = window.location.search.match(reParam) return ( match && match.length > 1 ) ? match[ 1 ] : null } var funcNum = getUrlParam( 'CKEditorFuncNum' ); var fileUrl = '/path/to/file.txt'; window.opener.CKEDITOR.tools.callFunction( funcNum, fileUrl );
例3
下面的代码说明了如何从PHP连接器中传回上传文件的URL:
<?php // Required: anonymous function reference number as explained above. $funcNum = $_GET['CKEditorFuncNum'] // Optional: instance name (might be used to load a specific configuration file or anything else). $CKEditor = $_GET['CKEditor'] // Optional: might be used to provide localized messages. $langCode = $_GET['langCode'] // Check the $_FILES array and save the file. Assign the correct path to a variable ($url). $url = '/path/to/uploaded/file.ext'; // Usually you will only assign something here if the file could not be uploaded. $message = echo "<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction($funcNum, '$url', '$message');</script>"; ?>
例4
如果data是一个函数,将在调用此文件浏览器的按钮范围内执行它。这意味着服务器连接器可以直接访问CKEditor和按钮所属的对话窗口。
假设除了传递根据对话窗口定义自动赋给相应域的fileUrl外,如果文件浏览器在Image Properties 对话窗口中打开,你还想设置alt属性。为此,将匿名函数作为第三个参数传递:
内容版权声明:除非注明,否则皆为本站原创文章。