FCKeditor的几点修改小结

在我的文章系统中,打算使用FCKeditor作为在线文本编辑器,在开发过程中,有几个地方需要对编辑器
进行修改,才能满足功能设计。
一、修改默认的上传文件名
    FCKeditor上传文件时,默认使用客户端的文件名,遇到重名文件,则自动重新命名,对于中文名称
的文件也是如此,这样对中文支持不好的服务器和浏览器,就容易对中文文件名的编解码出现错误而导致
乱码,因此需要将默认的文件命名方法修改为以当前日期、时间为基本要素的文件名,同时,为了避免重
复,还要用到随机函数。在.NET中,可以用System.Redom.Next(min, max)来生成一个介于min和max之间
的随机数,但要注意的时,System.Redom必须实例化。
    此处修改需要FCKeditor的源代码并进行重新编译,使用VS.net 2003打开工程文件,对Uploader.cs
文件进行修改。
    首先,将第46行string sFileName = System.IO.Path.GetFileName( oFile.FileName );注释掉;
    其次,在其下方加入如下代码
    DateTime dt = DateTime.Now;
    string sFileName = dt.Year.ToString() + dt.Month.ToString() + dt.Day.ToString() + 
dt.Hour.ToString() + dt.Minute.ToString() + dt.Second.ToString() + dt.Millisecond + new 
System.Random().Next(0, 999).ToString();
    sFileName += System.IO.Path.GetExtension( oFile.FileName );
    这样,sFileName就是形如“20070510171005230010.jpg”的文件名了,并且不可能出现重复文件名
的现象。
    按下组合快捷键Ctrl+Shift+B生成解决方案,将项目文件夹下的bin/Debug/FredCK.FCKeditorV2.dll
组件拷贝到网站根目录下的bin目录中,即可在网站工程中进行引用了。
二、把上传的图片动态加入编辑器所在页面的下拉列表中
    由于需要指定文章的标志图片,除了输入以外,还应该可以从下拉列表中选择已经上传的图片,这样
,就必须在FCKeditor上传完图片时,*纵编辑器所在页面的select,并为其加入新的option。此处的关
键在于对静态模式网页对话框父窗口的引用,以及利用javascript加入option。
    打开FCKeditor编辑器所在目录的\editor\dialog\fck_image\fck_image.js文件,在文件上传成功的
事件部分,加入以下代码。
    var ddl = oEditor.parent.document.Form1.ddlPicUrl;
    var opt = oEditor.parent.document.createElement("OPTION")
    opt.text = fileName;
    opt.value= fileUrl
    ddl.options.add(opt);
    其中,oEditor是FCKeditor是对网页对话框的父窗口的引用,而oEditor.parent就是对编辑器所在页
面的引用了。
    获取这样一个列表后,就可以在文章发布页面编写相关的javascript函数,来实现预览、选择等功能

(0)

相关推荐

  • FCKeditor的几点修改小结

    在我的文章系统中,打算使用FCKeditor作为在线文本编辑器,在开发过程中,有几个地方需要对编辑器 进行修改,才能满足功能设计. 一.修改默认的上传文件名     FCKeditor上传文件时,默认使用客户端的文件名,遇到重名文件,则自动重新命名,对于中文名称 的文件也是如此,这样对中文支持不好的服务器和浏览器,就容易对中文文件名的编解码出现错误而导致 乱码,因此需要将默认的文件命名方法修改为以当前日期.时间为基本要素的文件名,同时,为了避免重 复,还要用到随机函数.在.NET中,可以用Sys

  • FF IE兼容性的修改小结

    1.html 标签如果用 $(id) 或者 getElementById 这两个方法取值时,要给该标签加上 id 的属性, IE . FF 才兼容.如 $(mobile): 如果填 写 mobile 的 input 没有 id 属性在 FF 中会报这个变量 undefined : 2. 取 form 表单的某个标签对象,如果要 IE . FF 兼容要把 formMain.item 改为 document.formName.item . 如 form1.webUrl 改为 document.for

  • FCKeditor 2.6 编码错误导致修改的内容出现乱码的解决方法

    FCKeditor 2.6 的目录 editor 下有一文件 fckeditor.html. 我修改了该文件,其中有些中文字,在 IE 中打开之,发现是乱码,原来这个文件有问题.文件中指定了 charset 为 utf-8: <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 可是文件却是以 ANSI 保存的,改为以 UTF-8 保存,中文不再乱码了. 顺便说一下,调用

  • FCKeditor .NET的配置、扩展与安全性经验交流

    前言 FCKeditor是使用非常广泛的HTML编辑器,本文从 ASP.NET 的使用场景对 FCKeditor 与 FCKeditor.NET 的配置.功能扩展(如自定义文件上传子目录.自定义文件名.上传图片的后期处理等).以及安全性进行初步的阐述. 希望能帮助有同样需求的同仁节省一点时间:也希望各位能指正其中的不足.谢谢. 一.自定义 FCKeditor 的 BasePath BasePath 即FCKeditor在网站中的相对路径,默认值是 /fckeditor/,最好在Web.confi

  • HTML 编辑器 FCKeditor使用详解

    一.简介 功能:所见即所得,支持图片和Flash,工具栏可自由配置,使用简单 兼容性:IE 5.5+.Firefox 1.5+.Safari 3.0+.Opera 9.50+.Netscape 7.1+. Camino 1.0+ 成熟度:使用广泛,被Baidu.CSDN等选用 二.下载 官方下载首页:http://www.fckeditor.net/download/,当前版本为2.5.1 需要下载FCKeditor 2.5.1(FCKeditor_2.5.1.zip)和FCKeditor.Ja

  • FCKeditor2.3 For PHP 详细整理的使用参考

    参考一 首先到:http://www.fckeditor.net去下载FCKeditor放到网站根目录.精简说明:删除所有"_"开头的文件和文件夹删除语言包中除中文和英文以外的语言删除skin目录下除默认皮肤以外的文件夹filemanager/browser/default/connectors/目录下除php以外的文件filemanager/upload/目录下除php以外的文件表情文件夹及表情按钮配置说明:fckeditor.php :BasePath为默认Fckeditor的目录

  • ASP.NET在线文本编辑控件的使用(第6节)

    首先了解在线文本编辑环境FCKeditor的使用方法,然后使用FCKeditor实现设计一个发表日志文章的页面. 学习内容 1.将FCKeditorV2.dll文件添加到工具箱.       右击工具箱中的任一控件组,在弹出的快捷菜单中选择"选择项",弹出"选择工具箱项"对话框,选择".NET Framework组件"选项卡,单击"浏览"按钮,在弹出的对话框中选择添加Bin文件夹下的FCKeditorV2.dll文件,添加控件

  • ecshop后台编辑器替换成ueditor编辑器

    1.Ueditor1.4.3下载(截止到2015-03-03最新版) 下载地址:http://ueditor.baidu.com/website/download.html 解决jquery冲突的jquery等相关文件下载 文件中已含js冲突修改文件,另外已修改php/config.json中的图处保存路径,用户也可以自行修改! 因为老杨用的是mac os系统,所以文件中有一些.DS_store文件,可以忽略或自行删除 下载地址:http://pan.baidu.com/s/1gdglb0J 密

  • MySQL数据库事务与锁深入分析

    一.基本概念 事务是指满足ACID特性的的一组操作,可以通过Commit提交事务,也可以也可以通过Rollback进行回滚.会存在中间态和一致性状态(也是真正在数据库表中存在的状态) 二.ACID Atomicity[原子性]:事务被视为不可分割的最小单元,事务的所有操作要么全部提交成功,要么全部失败回滚.回滚可以用回滚日志(undo Log)来实现,回滚日志记录着事务所执行的修改操作,在回滚时反向执行这些修改操作即可 undoLog:为了满足事务的原子性,在操作任何数据之前,首先将数据备份到U

  • 详细聊一聊mysql的树形结构存储以及查询

    目录 序 存储parent 存储path MPTT(Modified Preorder Tree Traversal) 小结 doc 序 本文主要研究一下mysql的树形结构存储及查询 存储parent 这种方式就是每个节点存储自己的parent_id信息 建表及数据准备 CREATE TABLE `menu` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `parent_id` int(11) NOT

随机推荐