zoukankan      html  css  js  c++  java
  • uEditor独立图片上传

    项目中。上传图片,非常希望有一款比较兼容的查件。

    网上找了一些,图片上传立刻显示的js代码,还有uploadify。都会碰到这样那样的不兼容和其它头疼的问题。

    后来想,干脆就用php的上传类最干脆。但是却不美观。

    觉得ueditor的图片上传不错。

    于是到网上搜索了一番。发现,确实有。不过,看不太懂,就照搬了。

    不过,ueditor的图片上传其实不是完全的独立。还是需要实例化ueditor这个家伙的,只不过是隐藏了而已。仅仅显示了图片功能。

    网上一搜“ueditor独立图片”,很多的,我就不多说了。我只记录我自己理解的,方便以后自己使用。

    因为我的是thinkphp框架开发的。所以代码如下:

    <include file="Common:header" />
    <js file="__ROOT__/Data/ueditor/ueditor.config.js"/>
    <js file="__ROOT__/Data/ueditor/ueditor.all.min.js"/>
    
    <script type="text/javascript">
    //这个是图片上传的,网上还有附件上传的
        (function($) {
            var image = {
                editor: null,
                init: function(editorid, keyid) {
                    var _editor = this.getEditor(editorid);
                    _editor.ready(function() {
                        _editor.setDisabled();
                        _editor.hide();
                        _editor.addListener('beforeInsertImage', function(t, args) {
                            $("#" + keyid).val(args[0].src);
                        });
                    });
                },
                getEditor: function(editorid) {
                    this.editor = UE.getEditor(editorid);
                    return this.editor;
                },
                show: function(id) {
                    var _editor = this.editor;
                    //注意这里只需要获取编辑器,无需渲染,如果强行渲染,在IE下可能会不兼容(切记)
                    //和网上一些朋友的代码不同之处就在这里
                    $("#" + id).click(function() {
                        var image = _editor.getDialog("insertimage");
                        image.render();
                        image.open();
                    });
                },
                render: function(editorid) {
                    var _editor = this.getEditor(editorid);
                    _editor.render();
                }
            };
            $(function() {
                image.init("myeditor", "upload");
                image.show("image");
            });
        })(jQuery);
    </script>
    <script type="text/javascript">
    //    必须有这个东西,不然,图片上传没法用。如果你独立上传图片,并且需要修改图片路径的话,你就模仿下面的代码
        var editor = UE.getEditor('myeditor', {
            imageUrl: "{:U(GROUP_NAME.'/Cases/upload/')}",
            imagePath: "__ROOT__/Uploads/",
            imageManagerUrl: "{:U(GROUP_NAME.'/cases/imagesManager/')}",
            imageManagerPath: "__ROOT__/",
        });
    </script>
    <form method='post' action='{:U(GROUP_NAME."/Cases/save")}' enctype="multipart/form-data">
                <table class="table">
                    <tbody>
                        <tr>
                            <td class="title_td">标题:</td>
                            <td class="input_td"><input type='text' name='title' style=' 300px'/></td>
                        </tr>
    
                        <tr>
                            <td class="title_td">图片:</td>
                            <td class="input_td">
                                <input id="upload" name='upload' type="text" style=' 300px' value=""/>
                                <script id="myeditor"></script>
                                <input type="button" id='image' value='上传图片'/>
    
                            </td>
                        </tr>
    
                        <tr>
                            <td colspan="2">
    
                                                          <input type='submit' value="提交保存"/></td>
    
                        </tr>
    
                    </tbody>
                </table>
    
            </form>
    <include file="Common:footer" />
  • 相关阅读:
    移动Oracle数据库表空间文件。
    Web页面嵌入复杂WinForm控件权限问题
    关于bleand2000下面oracle服务器优化
    祝大家新年快乐!
    CentOS安装配置MongoDB及PHP MongoDB 扩展安装配置 新风宇宙
    FastDFS介绍和配置过程 新风宇宙
    ubuntu下安装redisserver和phpredis 新风宇宙
    PHP安装fastDFS扩展 新风宇宙
    用socket发送流数据示用 php://input? 接受post数据(可实现php和c/c++数据通讯) 新风宇宙
    linux操作系统下c语言编程入门 新风宇宙
  • 原文地址:https://www.cnblogs.com/wenzichiqingwa/p/3507327.html
Copyright © 2011-2022 走看看