ASP.NET配置Ueditor编辑器上传图片路径

1、配置ueditor/editor_config.js文件,将

        //图片上传配置区
        ,imageUrl:URL+"net/imageUp.ashx"             //图片上传提交地址
        ,imagePath:URL + "net/"                     //图片修正地址,引用了fixedImagePath,如有特殊需求,可自行配置

修改为

        //图片上传配置区
        ,imageUrl:URL+"net/imageUp.ashx"             //图片上传提交地址
        ,imagePath:"http://localhost:3499/"                     //图片修正地址,引用了fixedImagePath,如有特殊需求,可自行配置

说明:其实,这里唯一变的地方就是imagePath,因为URL的值是通过一个函数计算出来的,其默认是就是ueditor所在的网页路径,比如:http://www.a.com/ueditor/。如果imagePath不做修改的话,那么我们在上传完图片,点击确定之后,编辑器返回的图片路径就是http://www.a.com/ueditor/net/upload/xxxxx.jpg。但是我们不想保存在/ueditor/net/upload/目录下,我们只想保存在根目录下面的upload下面,怎么办?那我们只要修改imagePath的值就可以了。就像上面一样。

2、修改ueditor/net/imageUp.ashx文件,将文件头部的

<%@ Assembly Src="Uploader.cs" %>

去掉。如果不去掉,就会提示:网络链接错误,请检查配置后重试。在网上查了下原因,说是跟.NET Framework版本有关。我的是4.0的。

3、修改ueditor/net/Uploader.cs文件,将

        pathbase = pathbase + DateTime.Now.ToString("yyyy-MM-dd") + "/";
        uploadpath = cxt.Server.MapPath(pathbase);//获取文件上传路径

修改为

        pathbase = pathbase + DateTime.Now.ToString("yyyy-MM-dd") + "/";
        uploadpath = cxt.Server.MapPath("~/" + pathbase);//获取文件上传路径

说明:因为这里的pathbase的值是“upload/”,我们获取文件上传路径的值就是:http://www.a.com/ueditor/net/upload/,不是我们想要的结果,所以我在这里加了个定位到网站根目录的字符串。这样uploadpath返回的值就是正确的了:http://www.a.com/upload/。

4、在页面上添加代码,显示ueditor。

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Ueditor.aspx.cs" Inherits="WebForm.Ueditor" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script type="text/javascript" src="ueditor/ueditor.config.js"></script>
    <script type="text/javascript" src="ueditor/ueditor.all.min.js"></script>
</head>
<body>
    <form  runat="server">
    <div>
        <script ></script>
    </div>
    </form>
</body>
</html>
<script type="text/javascript">
    //创建编辑器
    var editor = new UE.ui.Editor({ initialFrameWidth: 600, initialFrameHeight: 300 });
    editor.render("myEditor");
</script>

仅供参考。

其实,我们只要调试下就可以解决上传路径的问题。很简单的。