ckeditor添加日历控件
这里日历控件用的是开源的My97DatePicker,先看下效果图:
1、点击左侧自定义的日历控件按钮,弹出日历控件对话框。
2、点击确定,日历控件添加的表单设计器中,同时保留日历的控件样式
3、点击ckeditor的预览控件,查看是否可以进行日历的选择。
下面就说一下实现,关于如何在ckeditor中添加自定义控件,可参考《ckeditor_4.4.5 自定义工具栏》一文。
首先将My97DatePicker的js文件添加到插件目录下:
plugin.js的代码如下:
- CKEDITOR.plugins.add('datepicker',
- {
- requires : ['dialog'],
- init : function (editor)
- {
- var pluginName = 'datepicker';
- //加载自定义窗口
- CKEDITOR.dialog.add('datepicker',this.path + "dialogs/datepicker.js");
- //给自定义插件注册一个调用命令
- editor.addCommand( pluginName, new CKEDITOR.dialogCommand( 'datepicker' ) );
- //注册一个按钮,来调用自定义插件
- editor.ui.addButton('DatePicker',
- {
- //editor.lang.mine是在zh-cn.js中定义的一个中文项,
- //这里可以直接写英文字符,不过要想显示中文就得修改zh-cn.js
- label : editor.lang.mine,
- command : pluginName
- });
- }
- }
- );
上述第九行代码中的this.path可获取当前文件所在的路径。
dialogs下的datepicker.js代码如下:
- CKEDITOR.dialog.add( 'datepicker', function( editor )
- {
- return {
- title : '日历控件',
- minWidth : 300,
- minHeight : 150,
- contents : [
- {
- id: 'tab1',
- label: '',
- title: '',
- elements :
- [
- {
- type: 'html',
- html:'选择日期:<style type="text/css">
- .Wdate{border: #999 1px solid;height: 20px;
- background: #fff url('+CKEDITOR.plugins.get("datepicker").path+'/images/datePicker.gif)
- no-repeat right;}
- </style>
- <input type="text" id="d241" onfocus="WdatePicker({dateFmt:\'yyyy-MM-dd HH:mm:ss\'})"
- class="Wdate" style="width:150px"/>'
- }
- ]
- }
- ],
- onOk: function(){
- editor.insertHtml('
- <style type="text/css">
- .Wdate{border: #999 1px solid;height: 20px;
- background: #fff url('+CKEDITOR.plugins.get("datepicker").path+'/images/datePicker.gif)
- no-repeat right;}
- </style>
- <input type="text" id="d241" onfocus="WdatePicker({dateFmt:\'yyyy-MM-dd HH:mm:ss\'})"
- class="Wdate" style="width:150px"/>');
- },
- };
- } );
日历控件的样式需要在上述js文件中自己加上,否则在引用的时候很容易出现引用路径不对导致样式丢失的bug。
转自:http://itxxz.com/a/gaoji/2014/1127/ckeditor_my97DatePicker.html
ckeditor添加日历控件的更多相关文章
- TWaver初学实战——如何在TWaver属性表中添加日历控件?
在日期输入框中添加日历控件,是一种非常流行和实用的做法.临渊羡鱼不如退而写代码,今天就看看在TWaver中是如何实现的. 资源准备 TWaver的在线使用文档中,就有TWaver Proper ...
- Birt时间参数添加My97日历控件
首先,思路: 引用My97.js然后为时间参数的textbox添加onclick事件 1.将My97添加到项目中的webcontent目录下(如图:) 2.添加My97引用 在项目路径下找到该文件\w ...
- C# 给Word文档添加内容控件
C# 给Word文档添加内容控件 在MS Word中,我们可以通过内容控件来向word文档中插入预先定义好的模块,指定模块的内容格式(如图片.日期.列表或格式化的文本等),从而创建一个结构化的word ...
- javascript实例学习之六—自定义日历控件
基于之前上篇博客轻量级jquery,tool.js和base.js.自定义开发的base_datePicker插件,效果类似于jquery_ui的datePicker插件 //基于Base.js以及t ...
- 日历控件修改的JS代码
var bMoveable=true; var _VersionInfo=" " ; //============================================= ...
- asp.net Calendar 日历控件用法
asp.net Calendar 是微软自带的一款日历控件,除了简单显示日期时间外, 还可以绑定一些需要的事件. Calendar_DayRender 事件,是在加载都去时间日期时候的方法,用此方法可 ...
- jQuery 日历控件 FullCalendar 初识
最近有个日程管理的需求,就学习了一下 FullCalendar 控件的一些基本知识,本文不是详细介绍该控件的 API 的文档,而是记录本人使用过程中的一些学习情况. 先看一下效果图 月/周/日视图 ...
- android日历控件(一)
自定义日历并且具备设置今天以前的时间不可点选,以前的颜色和当前的颜色不同,以及获取两次点击日期之间间隔的天数所以说细节比较多 个人习惯,先上图 靠,笔记本不知道怎么回事,禁用到触摸板之后 再次唤醒屏幕 ...
- mvc 日历控件
第二个是日历控件,在网上查了一个普通的日历控件,也生成了下拉的日历样子,但是一些脚本比如选择年月,需要一些时间,最后只好套用了My97 DatePicker,这样以来其实简单多了. 第一步:下载 My ...
随机推荐
- weex 项目搭建
第一步:安装依赖 npm install -g weex-toolkit weex -v //查看当前weex版本 weex update weex-devtool@latest //@后标注版本后, ...
- Ajax 使用 FormData做为data的参数时 出现Illegal invocation
今天在用ajax向后台传递数据时出现此错误,在ajax的参数中加上 contentType: false, processData: false, 这两句即可.
- POJ 2010 Moo University - Financial Aid(堆维护滑窗kth,二分)
按照score排序,贪心,从左到右用堆维护并且记录前面的最小N/2个花费之和. 然后从右向左枚举中位数,维护N/2个数之和加上并判断是否满足条件.(stl的队列没有clear(),只能一个一个pop. ...
- 【BZOJ3930】[CQOI2015] 选数(容斥)
点此看题面 大致题意: 让你求出在区间\([L,H]\)间选择\(n\)个数时,有多少种方案使其\(gcd\)为\(K\). 容斥 原以为是一道可怕的莫比乌斯反演题. 但是,数据范围中有这样一句话:\ ...
- Object类和String类
Object类 Object类是Java语言中的根类,即所有类的父类. equals方法 返回值类型为:boolean类型 用于比较两个对象是否相同,它其实就是使用两个对象的内存地址在比较. 例子: ...
- RabbitMQ使用教程(五)如何保证队列里的消息99.99%被消费?
1. 前情回顾 RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例 RabbitMQ使用教程(二)RabbitMQ用户管理,角色管理及权限设置 RabbitMQ使用 ...
- 操作系统(1)_操作系统结构_李善平ppt
cpu和内存之间通过地址总线.数据总线.控制总线连接.外部总线连接外部设备.下图有问题,内存和外设没有直接连接.同一组总线,CPU和内存连接的时候硬盘就不能和内存连接,否则有冲突,core和core之 ...
- cocoapods 类库管理利器
作为iOS开发者,第三方类库的使用是最经常的,但鉴于第三方类库的不断更新以及其可能需要依存其他类,如果要使用最新版那么我们需要重新下载再添加到项目中,无疑带来一些繁琐的麻烦,那么现在这里就有一款能解决 ...
- vi中系统剪切板的设置
在vi中,如果编译时没有clipboard属性,将vi中的内容拷贝到系统剪切板有些麻烦.可以用如下的方法,查看vi 是否支持系统剪切板的功能: xt@xt-ThinkPad-X220:~$ vi -- ...
- abs的个人博客 http://abs001.top/blog
abs的个人博客 abs的个人博客 abs的个人博客 abs的个人博客 abs的个人博客 abs的个人博客 abs的个人博客 abs的个人博客 abs的个人博客 abs的个人博客 abs的个人博客 a ...