因为编者我还是一个初学入门者,无论是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版本编辑器内容为空的方法的更多相关文章

  1. js判断登陆用户名及密码是否为空的简单实例

    js判断登陆用户名及密码是否为空的简单实例 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 <script type="text/javascript ...

  2. js判断浏览器是否安装或启用了flash的方法总结

    目录 # js判断浏览器是否安装或启用了flash的方法 # chrome浏览器启用flash插件的方法 # 参考 # js判断浏览器是否安装或启用了flash的方法 在传统浏览器,可以使用windo ...

  3. js判断IE浏览器版本

    if(navigator.userAgent.indexOf("MSIE")>0){ if(navigator.userAgent.indexOf("MSIE 6. ...

  4. 更靠谱的js判断浏览器及其版本

    所有的前端开发人员都没有办法回避一个问题,那就是浏览器版本判断,当我们无法回避需要进行浏览器版本判断时,前辈们往往会告诉我们,可以判断 UserAgent这个用来标示浏览器的字符串,通过判断这一字符串 ...

  5. 实验:JS判断浏览器中英文版本

    <script type="text/javascript"> var lang = (navigator.systemLanguage?navigator.syste ...

  6. js判断IE浏览器版本(IE8及以下)

    var DEFAULT_VERSION = 8.0; var ua = navigator.userAgent.toLowerCase(); var isIE = ua.indexOf("m ...

  7. JS判断PC操作系统版本

    var version = navigator.userAgent; console.log(version); //"Mozilla/5.0 (Windows NT 10.0; WOW64 ...

  8. JS判断浏览器是否支持某一个CSS3属性的方法

    var div = document.createElement('div'); console.log(div.style.transition); //如果支持的话, 会输出 "&quo ...

  9. JS判断指定dom元素是否在屏幕内的方法实例

    前言 刷网页的时候,有时会遇到这样一个情景,当某个dom元素滚到可见区域时,或者图片的懒加载效果,它就会展现显示动画,十分有趣.那么这是如何实现的呢? 实现原理 想要实现这个功能,就要知道具体的实现原 ...

随机推荐

  1. 表单数据校检方法 onsubmit()的使用?

    在项目中为一个表单(from)编写onsubmit()脚本的时候,经常需要验证表单中数据的合法性 所以常会写道:<form action="/admin/addUser.do" ...

  2. python运维开发之第六天

    Python面向对象 python从设计之初就已经是一门面向对象的语言,在python中创建一个类和对象很容易. 面向对象简介:类(class),类变量,object(基类),实例变量,构造函数,封装 ...

  3. Autoit实现分割字符串,循环输出元素

    #include <MsgBoxConstants.au3> Local $aDays = StringSplit("Mon,Tues,Wed,Thur,Fri,Sat,Sun& ...

  4. CentOS 6.x 下Postfix和dovecot邮件服务安装和基本配置

    1 卸载sendmail [root@mail~]# pstree | grep sendmail [root@mail~]# service sendmail stop [root@mail~]# ...

  5. 转:使用Jazz Automation编写自动化测试

    Jazz Automation介绍 Jazz Automation是一个测试框架,构建它的目的是为所有类型的Web系统或者静态网站自动化同时加速验收/功能测试.它还能够容易地实现自动化集成测试.以前的 ...

  6. poj 1573Robot Motion

    http://poj.org/problem?id=1573 #include<cstdio> #include<cstring> #include<algorithm& ...

  7. Actor模型

    Actors模型(Actor model)首先是由Carl Hewitt在1973定义, 由Erlang OTP (Open Telecom Platform) 推广,其 消息传递更加符合面向对象的原 ...

  8. HDOJ的题目分类

    模拟题, 枚举 1002 1004 1013 1015 1017 1020 1022 1029 1031 1033 1034 1035 1036 1037 1039 1042 1047 1048 10 ...

  9. POJ 1700 坐船过河问题

    题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82974#problem/E 解题思路:当n>=4,假设n个人单独过河所需 ...

  10. java的异常处理简介

    异常概述 任何一种程序设计语言设计的程序在运行时都有可能出现错误,例如除数为0,数组下标越界,要读写的文件不存在等等. 捕获错误最理想的是在编译期间,但有的错误只有在运行时才会发生. 对于这些错误,一 ...