ueditor1.4.3配置过程(包含单独上传文件以及图片的使用)

这里使用的是ueditor1.4.3的jsp版本的UTF-8版本.

首先下载相应的ueditor,将ueditor文件夹直接拷贝到项目中,文件结构如下所示:

然后将项目要用的jar包导入到lib目录下,在导入之前要先修改一下ueditor的jar包中的bug,这个可以参考这里点击打开链接

接着就是配置jsp目录下的config.json文件了,让它能适应我们的项目,配置内容如下:

/* 前后端通信相关的配置,注释只允许使用多行方式 */

{

/* 上传图片配置项 */

"imageActionName": "uploadimage", /* 执行上传图片的action名称 */

"imageFieldName": "upfile", /* 提交的图片表单名称 */

"imageMaxSize": 51200000, /* 上传大小限制,单位B */

"imageAllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp",".swf"], /* 上传图片格式显示 */

"imageCompressEnable": true, /* 是否压缩图片,默认是true */

"imageCompressBorder": 1600, /* 图片压缩最长边限制 */

"imageInsertAlign": "none", /* 插入的图片浮动方式 */

"imageUrlPrefix": "http://localhost:8080/soulpower", /* 图片访问路径前缀 */

"imagePathFormat": "/ueditor/jsp/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}", /* 上传保存路径,可以自定义保存路径和文件名格式 */

/* {filename} 会替换成原文件名,配置这项需要注意中文乱码问题 */

/* {rand:6} 会替换成随机数,后面的数字是随机数的位数 */

/* {time} 会替换成时间戳 */

/* {yyyy} 会替换成四位年份 */

/* {yy} 会替换成两位年份 */

/* {mm} 会替换成两位月份 */

/* {dd} 会替换成两位日期 */

/* {hh} 会替换成两位小时 */

/* {ii} 会替换成两位分钟 */

/* {ss} 会替换成两位秒 */

/* 非法字符 \ : * ? " < > | */

/* 具请体看线上文档: fex.baidu.com/ueditor/#use-format_upload_filename */

/* 涂鸦图片上传配置项 */

"scrawlActionName": "uploadscrawl", /* 执行上传涂鸦的action名称 */

"scrawlFieldName": "upfile", /* 提交的图片表单名称 */

"scrawlPathFormat": "/ueditor/jsp/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}", /* 上传保存路径,可以自定义保存路径和文件名格式 */

"scrawlMaxSize": 2048000, /* 上传大小限制,单位B */

"scrawlUrlPrefix": "", /* 图片访问路径前缀 */

"scrawlInsertAlign": "none",

/* 截图工具上传 */

"snapscreenActionName": "uploadimage", /* 执行上传截图的action名称 */

"snapscreenPathFormat": "/ueditor/jsp/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}", /* 上传保存路径,可以自定义保存路径和文件名格式 */

"snapscreenUrlPrefix": "", /* 图片访问路径前缀 */

"snapscreenInsertAlign": "none", /* 插入的图片浮动方式 */

/* 抓取远程图片配置 */

"catcherLocalDomain": ["127.0.0.1", "localhost", "img.baidu.com"],

"catcherActionName": "catchimage", /* 执行抓取远程图片的action名称 */

"catcherFieldName": "source", /* 提交的图片列表表单名称 */

"catcherPathFormat": "/ueditor/jsp/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}", /* 上传保存路径,可以自定义保存路径和文件名格式 */

"catcherUrlPrefix": "", /* 图片访问路径前缀 */

"catcherMaxSize": 2048000, /* 上传大小限制,单位B */

"catcherAllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp"], /* 抓取图片格式显示 */

/* 上传视频配置 */

"videoActionName": "uploadvideo", /* 执行上传视频的action名称 */

"videoFieldName": "upfile", /* 提交的视频表单名称 */

"videoPathFormat": "/ueditor/jsp/upload/video/{yyyy}{mm}{dd}/{time}{rand:6}", /* 上传保存路径,可以自定义保存路径和文件名格式 */

"videoUrlPrefix": "http://localhost:8080/soulpower", /* 视频访问路径前缀 */

"videoMaxSize": 102400000, /* 上传大小限制,单位B,默认100MB */

"videoAllowFiles": [

".flv", ".swf", ".mkv", ".avi", ".rm", ".rmvb", ".mpeg", ".mpg",

".ogg", ".ogv", ".mov", ".wmv", ".mp4", ".webm", ".mp3", ".wav", ".mid"], /* 上传视频格式显示 */

/* 上传文件配置 */

"fileActionName": "uploadfile", /* controller里,执行上传视频的action名称 */

"fileFieldName": "upfile", /* 提交的文件表单名称 */

"filePathFormat": "/ueditor/jsp/upload/file/{yyyy}{mm}{dd}/{time}{rand:6}", /* 上传保存路径,可以自定义保存路径和文件名格式 */

"fileUrlPrefix": "http://localhost:8080/soulpower", /* 文件访问路径前缀 */

"fileMaxSize": 51200000, /* 上传大小限制,单位B,默认50MB */

"fileAllowFiles": [

".png", ".jpg", ".jpeg", ".gif", ".bmp",

".flv", ".swf", ".mkv", ".avi", ".rm", ".rmvb", ".mpeg", ".mpg",

".ogg", ".ogv", ".mov", ".wmv", ".mp4", ".webm", ".mp3", ".wav", ".mid",

".rar", ".zip", ".tar", ".gz", ".7z", ".bz2", ".cab", ".iso",

".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".pdf", ".txt", ".md", ".xml"

], /* 上传文件格式显示 */

/* 列出指定目录下的图片 */

"imageManagerActionName": "listimage", /* 执行图片管理的action名称 */

"imageManagerListPath": "/ueditor/jsp/upload/image/", /* 指定要列出图片的目录 */

"imageManagerListSize": 20, /* 每次列出文件数量 */

"imageManagerUrlPrefix": "http://localhost:8080/soulpower", /* 图片访问路径前缀 */

"imageManagerInsertAlign": "none", /* 插入的图片浮动方式 */

"imageManagerAllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp"], /* 列出的文件类型 */

/* 列出指定目录下的文件 */

"fileManagerActionName": "listfile", /* 执行文件管理的action名称 */

"fileManagerListPath": "/ueditor/jsp/upload/file/", /* 指定要列出文件的目录 */

"fileManagerUrlPrefix": "http://localhost:8080/soulpower", /* 文件访问路径前缀 */

"fileManagerListSize": 20, /* 每次列出文件数量 */

"fileManagerAllowFiles": [

".png", ".jpg", ".jpeg", ".gif", ".bmp",

".flv", ".swf", ".mkv", ".avi", ".rm", ".rmvb", ".mpeg", ".mpg",

".ogg", ".ogv", ".mov", ".wmv", ".mp4", ".webm", ".mp3", ".wav", ".mid",

".rar", ".zip", ".tar", ".gz", ".7z", ".bz2", ".cab", ".iso",

".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".pdf", ".txt", ".md", ".xml"

] /* 列出的文件类型 */

}

我主要修改了各种文件的上传前缀,让项目能够使用到相应的文件.(这里要注意一点,我们的congfig.json是UTF-8的版本,当你把项目部署到服务器上的时候通过文本编辑器修改这个文件的时候是不起效果的,项目会出错,这是因为编码冲突的问题,所以我一般都是在IDE中修改好了以后之间复制到服务器上的.)

然后就是页面的配置了

首先引入两个js文件

<script src="${pageContext.request.contextPath}/ueditor/ueditor.config.js" type="text/javascript"></script>
<script src="${pageContext.request.contextPath}/ueditor/ueditor.all.js"    type="text/javascript"></script>

然后要初始化两个参数

<script type="text/javascript"><span style="white-space:pre">	</span>$(function() {
<span style="white-space:pre">		</span>window.UEDITOR_HOME_URL = "${pageContext.request.contextPath}/ueditor/";
<span style="white-space:pre">		</span>window.REAL_PATH = "${pageContext.request.contextPath}";
<span style="white-space:pre">	</span>});</script><span style="white-space:pre">	</span>

这两个参数是指定ueditor的使用路径

接着在body中加入一个uditor的script

<script id="container" name="content" type="text/plain" style="width:100%;height:500px;">
</script>

然后就是初始化这个container了

	<script type="text/javascript">
		var ue = UE.getEditor("container");
	</script>

这样我们的ueditor就可以正常使用了.

下面介绍一下如何独立使用图片上传功能和文件上传功能

使用刚才的页面,我们在

var ue = UE.getEditor("container");

加入如下的javascript代码

container.ready(function () {
    //设置编辑器不可用
    //<pre name="code" class="html">container<span style="font-family: Arial, Helvetica, sans-serif;">.setDisabled();</span>

//隐藏编辑器,因为不会用到这个编辑器实例,所以要隐藏

container<span style="font-family: Arial, Helvetica, sans-serif;">.hide();</span>

//侦听图片上传container.addListener(‘beforeInsertImage‘, function (t, arg) {

//将地址赋值给相应的input $("#"+inpt).val(arg[0].src); //图片预览 $("#"+prev).attr("src", arg[0].src); }); //侦听文件上传container.addListener(‘afterUpfile‘, function
(t, arg) {

$("#file").attr("value", arg[0].url); });});


//弹出图片上传的对话框
function upImage() {
    var myImage = container.getDialog("insertimage");
    myImage.open();
}
//弹出文件上传的对话框
function upFiles() {
    var myFiles = container.getDialog("attachment");
    myFiles.open();
}

通过按钮来调用这两个函数就可以完成文件上传以及图片上传的单独使用了.图片上传没有问题,但是文件上传我们需要作一些修改

打开ueditor.all.js,找到如下位置,插入红色背景的代码

commands:{

‘insertfile‘: {

execCommand: function (command, filelist){

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

if(me.fireEvent(‘afterUpfile‘, filelist) === true){

return;

}

var i, item, icon, title,

html = ‘‘,

URL = me.getOpt(‘UEDITOR_HOME_URL‘),

iconDir = URL + (URL.substr(URL.length - 1) == ‘/‘ ? ‘‘:‘/‘) + ‘dialogs/attachment/fileTypeImages/‘;

for (i = 0; i < filelist.length; i++) {

item = filelist[i];

icon = iconDir + getFileIcon(item.url);

title = item.title || item.url.substr(item.url.lastIndexOf(‘/‘) + 1);

html += ‘<p style="line-height: 16px;">‘ +

‘<img style="vertical-align: middle; margin-right: 2px;" src="‘+ icon + ‘" _src="‘ + icon + ‘" />‘ +

‘<a style="font-size:12px; color:#0066cc;" href="‘ + item.url +‘" title="‘ + title + ‘">‘ + title + ‘</a>‘ +

‘</p>‘;

}

me.execCommand(‘insertHtml‘, html);

}

}

}

主要是ueditor中没有afterUpfile事件,我们自己触发一下.(如果你的项目以前运行过ueditor的项目,那么修改了这里要注意清空一下浏览器的缓存,因为ueditor是有缓存的,否则修改无法生效)

时间: 2024-11-21 02:56:38

ueditor1.4.3配置过程(包含单独上传文件以及图片的使用)的相关文章

SpringMVC上传文件(图片)并保存到本地

SpringMVC上传文件(图片)并保存到本地 小记一波~ 基本的MVC配置就不展示了,这里给出核心代码 在spring-mvc的配置文件中写入如下配置 <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize">

使用FormData上传文件、图片

关于FormData XMLHttpRequest Level 2添加了一个新的接口  ---- FormData 利用FormData对象,可以通过js用一些键值对来模拟一系列表单控件,可以使用XMLHttpRequest的 send( ) 方法来异步提交表单 与普通的ajax相比,使用FormData的最大优点就是可以异步上传二进制文件 FormData对象 FormData对象,可以把所有表单元素的name与value组成一个queryString,提交到后台. 在使用ajax提交时,使用

input type=&#39;file&#39; 上传文件 判断图片的大小是否合格与witdh 和 height 是否合格

function CheckFiles(obj) { var array = new Array('gif', 'jpeg', 'png', 'jpg'); //可以上传的文件类型 if (obj.value == '') { alert("让选择要上传的图片!"); return false; } else { var fileContentType = obj.value.match(/^(.*)(\.)(.{1,8})$/)[3]; //这个文件类型正则很有用:) var isE

KindEditor单独上传图片、单独上传文件、编辑器的通用设置与调用

KindEditor.ready(function(K){ var editor = K.editor({ allowFileManager:true }); // 上传图片 K('#imageBtn').click(function(){ editor.loadPlugin('image', function(){ editor.plugin.imageDialog({ imageUrl:K('#image').val(), clickFn:function(url){ K('#image')

Webform之FileUpload(上传按钮控件)简单介绍及下载、上传文件时图片预览

1.FileUpload上传控件:(原文:http://www.cnblogs.com/hide0511/archive/2006/09/24/513201.html) FileUpload 控件显示一个文本框控件和一个浏览按钮,使用户可以选择客户端上的文件并将它上载到 Web 服务器.用户通过在控件的文本框中输入本地计算机上文件的完整路径(例如,C:\MyFiles\TestFile.txt)来指定要上载的文件.用户也可以通过单击“浏览”按钮,然后在“选择文件”对话框中定位文件来选择文件.  

Thinkphp 3.0版本上传文件加图片缩略图实例解析

先看html加个表单,注意这里的action 路径要选 对. <div> <form action="__URL__/add_img" enctype="multipart/form-data" method="post" style="padding:10px;" > 图片宽度:<input type="text" name="width" /> 图

C# 结合html5 批量上传文件和图片预览

html5 新特性 <input id="imgsf" type="file" name="imgsf" multiple  /> input  file 中增加 multiple   属性可以选择多文件.IE9以下版本不兼容 <form id="form1" method="post" action="upload_json.ashx" enctype="m

MVC与webservice上传文件(图片和视频),希望帮且到一些朋友

最近做一个项目,要把图片和视频传到服务器上(网站与图片服务器分开),在网上找了好久,没找到完整的资料. 自己也折腾了半天,才把完整的代码实现完.可能好多朋友都有实现过,没分享代码吧,写得不好希望不要见笑!! 下面贴代码吧:首先MVC代码: public string UploadVide() { string requesturl = ""; string result = "video/Videoitem/"; HttpFileCollectionBase fil

AFNetworking框架_上传文件或图片到服务器

文中的 XXXXXXXXXX更具你自己的参数填写 - (void)uploadImageWithImage:(NSString *)imagePath { //上传其他所需参数 NSString *userId=XXXXXXXXXXX; NSString *token=XXXXXXXXXXX; //上传请求POST AFHTTPClient *client=[AFHTTPClient clientWithBaseURL:[NSURL URLWithString:@""]]; NSStr