(转)用JS判断ckeditor3.6版本编辑器内容为空的方法
因为编者我还是一个初学入门者,无论是JS还是PHP,都是懂了点皮毛。今天在研究ckeditor编辑器的时候遇到了一些问题,虽然这只是我的个人问题,但觉得可以分享给其他人,或许也有像我这样的初学者也会遇到这问题。
好了,现在谈一下这问题。
在接触ckeditor编辑器之前,编者制作的表单都是用的<textarea>标签,比如制作的留言本、新闻发布器等,但由于<textarea>的输入框输入的内容格式单一,基本没什么扩展功能,所以使用了ckeditor编辑器。在这里先声明,编者使用的是ckeditor3.6版本的。
在<textarea>的时候,我们用js判断输入框内容是否为空一般都是这么写的:
|
1
2
3
4
5
6
7
8
|
<script> function check_form(){ if(myform.content.value==""){ alert("请输入内容!"); return false; } }</script> |
下面是表单代码:
|
1
2
3
4
|
<form action="" name="myform" method="post"> <textarea name="content" rows=10 cols=40>默认内容</textarea> <input type="submit" name="sub" check_form()"></form> |
上面的两端代码组合是可以进行输入框内容验证的。
那么在使用了ckeditor3.6之后,如果js里继续使用myform.content.value获取输入框里的内容的话是没有效果的了。后来网上了解到,在ckeditor3.6版本里,要获取到编辑器里的内容,需要使用CKEDITOR.instances.content_name.getData(),其中content_name换成你自己的name属性值,在3.0及之前版本使用CKEDITOR.instancesgetData()。而且获取到的编辑器里的内容是带有html标签的,这要注意了。
譬如编者最后改版的js代码如下:
|
1
2
3
4
5
6
7
8
9
10
|
<script>function check_form(){ var content= CKEDITOR.instances.content.getData(); if(content==""||content.match("请在这里输入新闻内容!")){ xw.content.focus(); alert("请填写新闻内容!"); return false; }}</script> |
JS代码可见,用CKEDITOR.instances.content_name.getData()获取到编辑器里的内容到变量content里,再在if条件里判断content内容是否为空,也判断是否包含下面我设置的默认值“请在这里输入新闻内容!”,一旦判断有其中之一就认为没有用户填写新闻内容。这里之所以用content.match()方法判断而不用content=="请在这里输入新闻内容!"是因为获取到的编辑器里的内容带有html标签,所以嘛,就不解释了。
再看表单代码如下(结合PHP):
|
1
2
3
4
5
|
<form name="myform" action="" method="post"> //显示编辑器(之前要创建CKEditor对象,这里就不写了) <?php $ed->editor("content","请在这里输入新闻内容!"); ?> <input type="submit" name="sub" check_form()"></form> |
表单代码中可见,显示的编辑器的name属性值是content,默认显示的文字是“请在这里输入新闻内容!”
这样就完成了对ckeditor编辑器内容是否为空的检测了。
当然可能这篇博文还有很多不完善的地方,希望各位高手们指出,以便日后完善一下。
(转)用JS判断ckeditor3.6版本编辑器内容为空的方法的更多相关文章
- js判断登陆用户名及密码是否为空的简单实例
js判断登陆用户名及密码是否为空的简单实例 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 <script type="text/javascript ...
- js判断浏览器是否安装或启用了flash的方法总结
目录 # js判断浏览器是否安装或启用了flash的方法 # chrome浏览器启用flash插件的方法 # 参考 # js判断浏览器是否安装或启用了flash的方法 在传统浏览器,可以使用windo ...
- js判断IE浏览器版本
if(navigator.userAgent.indexOf("MSIE")>0){ if(navigator.userAgent.indexOf("MSIE 6. ...
- 更靠谱的js判断浏览器及其版本
所有的前端开发人员都没有办法回避一个问题,那就是浏览器版本判断,当我们无法回避需要进行浏览器版本判断时,前辈们往往会告诉我们,可以判断 UserAgent这个用来标示浏览器的字符串,通过判断这一字符串 ...
- 实验:JS判断浏览器中英文版本
<script type="text/javascript"> var lang = (navigator.systemLanguage?navigator.syste ...
- js判断IE浏览器版本(IE8及以下)
var DEFAULT_VERSION = 8.0; var ua = navigator.userAgent.toLowerCase(); var isIE = ua.indexOf("m ...
- JS判断PC操作系统版本
var version = navigator.userAgent; console.log(version); //"Mozilla/5.0 (Windows NT 10.0; WOW64 ...
- JS判断浏览器是否支持某一个CSS3属性的方法
var div = document.createElement('div'); console.log(div.style.transition); //如果支持的话, 会输出 "&quo ...
- JS判断指定dom元素是否在屏幕内的方法实例
前言 刷网页的时候,有时会遇到这样一个情景,当某个dom元素滚到可见区域时,或者图片的懒加载效果,它就会展现显示动画,十分有趣.那么这是如何实现的呢? 实现原理 想要实现这个功能,就要知道具体的实现原 ...
随机推荐
- Phaser开源2d引擎 javascript/html5游戏框架
功能特点(Features) 易维护代码(Easy Asset Loading) Phaser可以加载图片,音频文件,数据文件,文本文件和自动解析精灵图和纹理地图集数据(出口纹理封隔器或Flash C ...
- linux 命令——PS命令
首先要明白什么是进程进程是一个正在运行的程序.也就是说在Linux系统上运行的所有东西都是进程.和进程相比较,作业是一系列按一定顺序执行的命令.一条简单的命令可能会涉及多个进程,尤其是当使用管道和重定 ...
- vector list array deque
因此在实际使用时,如何选择这三个容器中哪一个,应根据你的需要而定,一般应遵循下面 的原则: 1.如果你需要高效的随即存取,而不在乎插入和删除的效率,使用vector 2.如果你需要大量的插入和 ...
- P1896 [SCOI2005]互不侵犯King
题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. 输入输出格式 输入格式: 只有一行,包 ...
- 转:精心挑选的12款优秀 jQuery Ajax 分页插件和教程
在这篇文章中,我为大家收集了12个基于 jQuery 框架的 Ajax 分页插件,这些插件都提供了详细的使用教程和演示.Ajax 技术的出现使得 Web 项目的用户体验有了极大的提高,如今借助优秀的 ...
- ubuntu后台运行命令行
ubuntu 程序后台运行几个方法 . 程序后加上“&” ,即 “./myjob &”, 将命令放入到一个作业队列中,可以用命令“jobs” 查看 . 将1中的命令放在 “()”中, ...
- 关于兄弟QWidget间的位置重叠
转自:http://hi.baidu.com/dbzhang800/item/a7bf1f1e983c6af964eabf45?qq-pf-to=pcqq.group 缘起 csdn上一用户抱怨:她的 ...
- Extjs4 自定义组件
Ext.onReady (function () { Ext.define ('MydesktopIcon', { /* Begin Definitions */ alias: 'widget.des ...
- 【HDOJ】1716 排列2
STL. /* 1716 */ #include <iostream> #include <algorithm> #include <cstdio> #includ ...
- 【HDOJ】2772 Matchsticks
纯粹的找规律题.1: 22: 53: 54: 45: 56: 67: 38: 79: 60: 6 2 1 13 7 74 4 115 2 ...