Ueditor 单独使用上传图片及上传附件方法

1

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

2

<script type="text/javascript">
    //重新实例化一个编辑器,防止在上面的editor编辑器中显示上传的图片或者文件
    var _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>

3 直接在按钮上调用 upFiles()upImage() 方法即可

4 最新版本中

_editor.addListener('afterUpfile', function (t, arg)

事件无响应,解决方法:

在 ueditor.all.js  或 ueditor.all.min.js  中 找到

UE.plugin.register('insertfile', function (){ 
 .....
});

filelist = utils.isArray(filelist) ? filelist : [filelist]; 

后面 ,或者在这个函数结束地方添加一行代码

 if(me.fireEvent('afterUpfile', filelist) === true){  return;  }

即可解决该问题,感谢http://kissthink.com/archive/--4771.html的分享

原文地址:https://www.cnblogs.com/LessNull/p/4612750.html