asp.net KindEditor及CkEditor配置说明

今天我们讲到的是ckeditor_3.2及ckfinder_asp教程net_1.4.3编辑器了,这也是现在比较流行网页在线编辑器,下面开始看吧。

一、kindeditor

kindeditor是一套开源的html可视化编辑器,主要用于让用户在网站上获得所见即所得编辑效果,兼容ie、firefox、chrome、safari、opera等主流浏览器。 kindeditor使用网页特效编写,可以无缝的与java、.net、php教程、asp等程序接合。
kindeditor非常适合在cms、商城、论坛、博客、wiki、电子邮件等互联网应用上使用,2006年7月首次发布2.0以来,kindeditor依靠出色的用户体验和领先的技术不断扩大编辑器市场占有率,目前在国内已经成为最受欢迎的编辑器之一。

目前最新版本 kindeditor 3.5.2,官网及下载地址

kindeditor配置步骤:

1、在项目中建立kindeditor文件夹,把下载下来后的文件解压,将其中的skins,plugins,kindeditor.js 拷到该kindeditor文件夹目录下;

2、在.aspx文件中放入textbox控件,并设置控件id

    如:<asp:textbox id="txtcontent" textmode="multiline"  runat="server"></asp:textbox>

3、在.aspx文件中引入kindeditor.js文件及js代码,可将textbox控件设置成kindeditor在线编辑器,代码如下:

<script src="../kindeditor/kindeditor.js" type="text/javascript"></script>
<script type="text/javascript">
    ke.show({
        id: txtcontent,
        imageuploadjson: '/handler/upload_json.ashx',
        items : [
     'source', '|', 'fullscreen', 'undo', 'redo', 'print', 'cut', 'copy', 'paste',
     'plainpaste', 'wordpaste', '|', 'justifyleft', 'justifycenter', 'justifyright',
     'justifyfull', 'insertorderedlist', 'insertunorderedlist', 'indent', 'outdent', 'subscript',
     'superscript', '|', 'selectall', '-',
     'title', 'fontname', 'fontsize', '|', 'textcolor', 'bgcolor', 'bold',
     'italic', 'underline', 'strikethrough', 'removeformat', '|', 'image',
     'flash', 'media', 'advtable', 'hr', 'emoticons', 'link', 'unlink'
         ]
    });
</script>

其中,id为textbox控件的id,imageuploadjson: '/handler/upload_json.ashx'可设置图片上传(文件上传设置同理),item为设置编辑器工具栏上的每一个功能是否显示,可根据需要手动增删对应单词,如不需要“html代码”功能则删除“'source',”;

4、在.aspx页面的第一句话及page指令中加上validaterequest=”false”,禁止.net自动屏蔽上传html代码;

  如:<%@ page language="c#" validaterequest="false"...

5、设置完毕,后台可直接通过textbox的text属性来获取编辑器内容;

另:设置kindeditor的图片上传功能
1、在刚才在.aspx页面中添加的js代码中添加imageuploadjson参数,

  如:imageuploadjson: '/handler/upload_json.ashx'
2、建立一般处理程序页面upload_json.ashx,该页面用于编写文件上传代码,在下载下来的源码有,在asp.net教程中,稍作修改,代码如下:

using system;
using system.collections.generic;
using system.linq;
using system.web;
using system.collections;
using system.io;
using system.globalization;
using litjson; // 需先手动添加litjson.dll的引用,在asp.netbin中

namespace yongbin.shop.web.handler
{
    /// <summary>
    /// upload_json 的摘要说明
    /// </summary>
    public class upload_json : ihttphandler
    {
        //文件保存目录路径
        private string savepath = "/upload/" + datetime.now.tostring("yyyymmdd") + "/";  // 修改上传目录
        //文件保存目录url(显示在kindeditor编辑器中的地址)
        private string saveurl = "/upload/" + datetime.now.tostring("yyyymmdd") + "/";
        //定义允许上传的文件扩展名
        private string filetypes = "gif,jpg,jpeg,png,bmp";
        //最大文件大小
        private int maxsize = 1000000;

        private httpcontext context;

        public void processrequest(httpcontext context)
        {
            this.context = context;

            httppostedfile imgfile = context.request.files["imgfile"];
            if (imgfile == null)
            {
                showerror("请选择文件。");
            }

            string dirpath = context.server.mappath(savepath);
            if (!directory.exists(dirpath))
            {
                directory.createdirectory(dirpath);  // 复制过来的代码改了这里,自动创建目录
            }

            string filename = imgfile.filename;
            string fileext = path.getextension(filename).tolower();
            arraylist filetypelist = arraylist.adapter(filetypes.split(','));

            if (imgfile.inputstream == null || imgfile.inputstream.length > maxsize)
            {
                showerror("上传文件大小超过限制。");
            }

            if (string.isnullorempty(fileext) || array.indexof(filetypes.split(','), fileext.substring(1).tolower()) == -1)
            {
                showerror("上传文件扩展名是不允许的扩展名。");
            }

            string newfilename = datetime.now.tostring("yyyymmddhhmmss_ffff", datetimeformatinfo.invariantinfo) + fileext;
            string filepath = dirpath + newfilename;

            imgfile.saveas(filepath);

            string fileurl = saveurl + newfilename;

            hashtable hash = new hashtable();
            hash["error"] = 0;
            hash["url"] = fileurl;
            context.response.addheader("content-type", "text/html; charset=utf-8");
            context.response.write(jsonmapper.tojson(hash));
            context.response.end();
        }

        private void showerror(string message)
        {
            hashtable hash = new hashtable();
            hash["error"] = 1;
            hash["message"] = message;
            context.response.addheader("content-type", "text/html; charset=utf-8");
            context.response.write(jsonmapper.tojson(hash));
            context.response.end();
        }

        public bool isreusable
        {
            get
            {
                return false;
            }
        }
    }
}

、配置成功

二、ckeditor
看过一个非官方非正式的关于.net在线编辑器的使用调查,ckeditor是被使用做多的,属于重量级编辑器,功能很强大;

ckeditor是新一代的fckeditor,是一个重新开发的版本。ckeditor是全球最优秀的网页在线文字编辑器之一,因其惊人的性能与可扩展性而广泛的被运用于各大网站。

(ckeditor 不具备上传功能,需要集成 文件管理器ckfinder 才能实现上传功能。)

我这里使用的版本是ckeditor_3.2及ckfinder_aspnet_1.4.3

不管那种web开发,经常都会应用到编辑器了,上面讲的是两种常用的编辑器了,其它文章写的是根据手册来的,你只要根据参考手册就可以快速的使用各种网页编辑器了。

时间: 2024-09-17 03:35:20

asp.net KindEditor及CkEditor配置说明的相关文章

ASP.NET笔记之CKEditor的使用方法_实用技巧

1.CKEditor原名FckEditor,著名的HTML编辑器,可以在线编辑HTML内容.自己人用CKEditor,网友用UBBEditor.      配置参考文档,主要将ckeditor中的(adapters.images.lang.plugins.skins.themes.ckeditor.js.config.js.contents.css)解压到js目录,然后"显示所有文件",将ckeditor的目录"包含在项目中",在发帖页面引用ckeditor.js,

asp.net 第三方空间 ckeditor 操作异常

问题描述 ckeditor在官网下载的asp.net版本,打开Demo后的图片如下:项目ckeditor文件夹本来在web项目下是我把它放到admin文件夹下面的,但是问题来了ckeditor文件夹放到admin下面以后配置好控件的路径,可以正常显示!如图:但是在使用的时候无法拷贝内容到<CKEditor:CKEditorControl>创建的好控件里面,点开上传图片窗口也会卡死关闭不掉,必须刷新页面!!请问这是什么情况是内部路径变了吗?如果我将ckeditor文件夹放到web项目下把也面也创

WindowsServer2003+IIS6+ASP+NET+PHP+MSSQL+MYSQL配置说明 |备份于waw.cnblogs.com

Win2003+IIS6+ASP+NET+PHP+PERL+MSSQL+MYSQL最新服务器安全设置技术实例 1.服务器安全设置之--硬盘权限篇   这里着重谈需要的权限,也就是最终文件夹或硬盘需要的权限,可以防御各种木马入侵,提权攻击,跨站攻击等.本实例经过多次试验,安全性能很好,服务器基本没有被木马威胁的担忧了. 详细配置说明下载: Win2003.rar   |备份于waw.cnblogs.com 硬盘或文件夹: C:\ D:\ E:\ F:\ 类推 主要权限部分: 其他权限部分: Adm

asp.net Web.config 详细配置说明_实用技巧

<?xml version="1.0" standalone="yes"?> <configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0"> <!--配置全局变量--> <appSettings> <add key="examstr" value="server=.;datab

KindEditor 显示数据库里的内容,并且可以修改。asp.net

问题描述 KindEditor 显示数据库里的内容,并且可以修改.asp.net KindEditor 显示数据库里的内容,并且可以修改.asp.net 在.cs页面要怎么写.如果可以的话还有保存数据到数据库呢?还有kindEditor是不是可以直接将文章的标题和内容区分开保存,我做新闻的系统 解决方案 放在母版里面的runat="server"的控件id会变,去掉这个runat属性,直接用服务器标签赋值数据库内容,将数据库内容读入全局变量中传递到母版的一个全局变量,然后用下面的代码

C# 使用ckeditor如何把html源码存进数据库

问题描述 <asp:TextBoxID="liuyan"CssClass="ckeditor"runat="server"TextMode="MultiLine"></asp:TextBox><scripttype="text/javascript">CKEDITOR.replace('<%=liuyan.ClientID.Replace("_"

cuteeditor-CuteEditor在Html页面使用

问题描述 CuteEditor在Html页面使用 你们有人在Html页面中添加过CuteEditor编译器去替换掉textarea富文本编译器吗? 我在网上看的都是说在ASP.NET中添加的. 解决方案 这个是asp.net插件,直接html用不了,除非你导出dll中的图片和js资源文件. 不是有很多开源的编辑器,ueditor,kindeditor,ckeditor之类的,都是居于html页面的

web-给位大神,评论中添加图片功能怎么实现的,给小弟点思路吧

问题描述 给位大神,评论中添加图片功能怎么实现的,给小弟点思路吧 就像贴吧那样可以添加图片到评论中然后发出显示评论带图片的.实在想不通,是直接将标签塞入还是其它的方法 解决方案 html编辑器,如ueditor,kindeditor,ckeditor等等 解决方案二: 富文本编译器?推荐markdown

常用的HTML富文本编译器UEditor、CKEditor、TinyMCE、HTMLArea、eWebEditor、KindEditor简介

1.UEditor UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于BSD协议,允许自由使用和修改代码... 主要特点: 轻量级:代码精简,加载迅速. 定制化:全新的分层理念,满足多元化的需求.采用三层架构:1. 核心层: 为命令层提供底层API,如range/selection/domUtils类.2. 命令插件层: 基于核心层开发command命令,命令之间相互独立.3. 界面层: 为命令层提供用户使用界面.满足不同层次用