ueditor 单独调用上传附件和图片的功能javascript

/ / 2025-04-14   阅读:2559
ueditor 单独调用上传附件和图片的功能...

第一步:引入文件

<script src="ueditor/ueditor.config.js" type="text/javascript" charset="utf-8"></script>
<script src="ueditor/ueditor.all.min.js" type="text/javascript" charset="utf-8"></script>
<script src="../jquery.min.js" type="text/javascript" charset="utf-8"></script>


第二步:html元素

<script type="text/plain" id="upload_ue"></script>

调用的页面: 

<input type="text" id="picture" name="cover" /><a href="javascript:void(0);" onclick="upImage();">上传图片</a>
<input type="text" id="file" /><a href="javascript:void(0);" onclick="upFiles();">上传文件</a>


第三步:编写js代码

<script type="text/javascript">
var _editor;
$(function() {

//重新实例化一个编辑器,防止在上面的editor编辑器中显示上传的图片或者文件
_editor = UE.getEditor('upload_ue');
_editor.ready(function () {
//设置编辑器不可用
_editor.setDisabled();
//隐藏编辑器,因为不会用到这个编辑器实例,所以要隐藏
_editor.hide();
//侦听图片上传
_editor.addListener('beforeInsertImage', function (t, arg) {
//将地址赋值给相应的input,只去第一张图片的路径
$("#picture").attr("value", arg[0].src);
//图片预览
$("#preview").attr("src", arg[0].src);
})
//侦听文件上传,取上传文件列表中第一个上传的文件的路径
_editor.addListener('afterUpfile', function (t, arg) {
$("#file").attr("value", _editor.options.filePath + arg[0].url);
})
});
}); 
//弹出图片上传的对话框
function upImage() {
var myImage = _editor.getDialog("insertimage");
myImage.open();
}
//弹出文件上传的对话框
function upFiles() {
var myFiles = _editor.getDialog("attachment");
myFiles.open();
}
</script>


第四步:最重要的一步,修改 bug

打开 image 插件的 image.js 108 行

editor.execCommand ('insertimage', list);

代码之前加入

editor.fireEvent ('beforeinsertimage', list);

然后问题搞定


在 ueditor 文件夹中找到文件 dialogs\attachment\attachment.html 中找到代码

editor.execCommand ("insertHTML",str);

代码之前加入

editor.fireEvent ('afterUpfile', filesList);

然后问题搞定


第五步:如果第四步不行,请参考这一步

在 ueditor 文件夹中找到文件 dialogs\attachment\attachment.js中找到代码

editor.execCommand('insertfile', list);

在这行代码前添加

editor.fireEvent ('afterUpfile', list);

然后问题搞定


我要评论

昵称:
验证码:

最新评论

共0条 共0页 10条/页 首页 上一页 下一页 尾页
意见反馈