网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 一个简单不报错的summernote 图片上传案例
内容
    一个比较完整的summernote上传图片的案例,没有后台(上传图片网上案例太多),只有前端js.修正了网上提供的,但是有bug的代码。
    这个例子,js保证不报错。亲测可用
    <%@ page language="java" contentType="text/html; charset=utf-8"
      pageEncoding="utf-8"%>
    <!DOCTYPE html >
    <html>
    <head>
    <script src="//code.jquery.com/jquery-1.9.1.min.js"></script>
    <link href="//netdna.bootstrapcdn.com/bootstrap/3.0.1/css/bootstrap.min.css" rel="stylesheet" type="text/css">
    <script src="//netdna.bootstrapcdn.com/bootstrap/3.0.1/js/bootstrap.min.js"></script>
    <link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css" rel="stylesheet" type="text/css"><!--必须-->
    <link href="summernote-master/dist/summernote.css" rel="stylesheet" type="text/css"><!--必须-->
    <script src="summernote-master/dist/summernote.js"></script><!--必须-->
    <script src="summernote-master/lang/summernote-zh-CN.js"></script>
    <title>bootstrap-markdown</title>
    <style>
    .note-alarm {
    float: right;
    margin-top: 10px;
    margin-right: 10px;
    }
    </style>
    </head>
    <body>
     <div id="summernote"></div>
    <script type="text/javascript">
    $(document).ready(function() {
    /* function sendFile(file, editor,welEditable) {
     console.log("file="+file);
     console.log("editor="+editor);
     console.log("welEditable="+welEditable);
      data = new FormData();
      data.append("blog_image[image]", file);
      $.ajax({
       url: 'blog_images.jsp',
       data: data,
       cache: false,
       contentType: false,
       processData: false,
       type: 'POST',
       success: function(data){
        editor.insertImage(welEditable, data.url);
       }
      });
     }
    */
     $('#summernote').summernote({
      height: 300, /*高さを指定*/
      lang: 'zh-CN', // default: 'en-US'
     focus:true,
      toolbar: [
       ['style', ['bold', 'italic', 'underline', 'clear']],
       ['fontsize', ['fontsize']],
       ['color', ['color']],
       ['para', ['ul', 'ol', 'paragraph']],
       ['height', ['height']],
       ['insert', ['picture', 'video']]
      ],
     /* image: {
         selectFromFiles: '选择文件'
        }, */
      /*onImageUpload: function(files, editor, welEditable) {
        sendFile(files[0], editor,welEditable);
      }*/
        onImageUpload: function(files, editor, $editable) {
      sendFile(files[0],editor,$editable);
      }
     });
    });
    function sendFile(file, editor, $editable){
    $(".note-toolbar.btn-toolbar").append('正在上传图片');
    var filename = false;
    try{
    filename = file['name'];
    alert(filename);
    } catch(e){filename = false;}
    if(!filename){$(".note-alarm").remove();}
    //以上防止在图片在编辑器内拖拽引发第二次上传导致的提示错误
    var ext = filename.substr(filename.lastIndexOf("."));
    ext = ext.toUpperCase();
    var timestamp = new Date().getTime();
    var name = timestamp+"_"+$("#summernote").attr('aid')+ext;
    //name是文件名,自己随意定义,aid是我自己增加的属性用于区分文件用户
    data = new FormData();
    data.append("file", file);
    data.append("key",name);
    data.append("token",$("#summernote").attr('token'));
    $.ajax({
    data: data,
    type: "POST",
    url: "/summernote/fileupload", //图片上传出来的url,返回的是图片上传后的路径,http格式
    contentType: "json",
    cache: false,
    processData: false,
    success: function(data) {
    //data是返回的hash,key之类的值,key是定义的文件名
    alert(data);
    //把图片放到编辑框中。editor.insertImage 是参数,写死。后面的http是网上的图片资源路径。
    //网上很多就是这一步出错。
    $('#summernote').summernote('editor.insertImage', "/uploads/202504/02/butterfly2902.jpg");
    $(".note-alarm").html("上传成功,请等待加载");
    setTimeout(function(){$(".note-alarm").remove();},3000);
    },
    error:function(){
    $(".note-alarm").html("上传失败");
    setTimeout(function(){$(".note-alarm").remove();},3000);
    }
    });
    }
    </script>
    </body>
    </html>
    以上这篇一个简单不报错的summernote 图片上传案例就是小编分享给大家的全部内容了,希望能给大家一个参考
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/13 8:26:56