DWZ与KindEditor编辑器的整合

原文:DWZ与KindEditor编辑器的整合

DWZ自带的编辑器是xheditor,可能很多人用不习惯。就像我,习惯用kindeditor了。现在就来说说如何整合dwz和kindeditor.

一、打开DWZ的中的dwz.ui.js,进行修改。

首先找到

if ($.fn.xheditor) {
        $("textarea.editor", $p).each(function(){
            var $this = $(this);
            var op = {html5Upload:false, skin: 'vista',tools: $this.attr("tools") || 'full'};
            var upAttrs = [
                ["upLinkUrl","upLinkExt","zip,rar,txt"],
                ["upImgUrl","upImgExt","jpg,jpeg,gif,png"],
                ["upFlashUrl","upFlashExt","swf"],
                ["upMediaUrl","upMediaExt","avi"]
            ];

            $(upAttrs).each(function(i){
                var urlAttr = upAttrs[i][0];
                var extAttr = upAttrs[i][1];

                if ($this.attr(urlAttr)) {
                    op[urlAttr] = $this.attr(urlAttr);
                    op[extAttr] = $this.attr(extAttr) || upAttrs[i][2];
                }
            });

            $this.xheditor(op);
        });
}

View Code

这个地方,在它的后面加上一段代码

$("textarea.kindeditor", $p).each(function () {
    $.getScript('kindeditor/kindeditor-min.js', function () {
        KindEditor.basePath = 'kindeditor/';
        var editor = KindEditor.create('textarea[name="content"]', {
            uploadJson: 'kindeditor/asp.net/upload_json.ashx',
            fileManagerJson: 'kindeditor/asp.net/file_manager_json.ashx',
            allowFileManager: true,
            afterBlur: function () { editor.sync(); },
            afterCreate: function () {
                var self = this;
                KindEditor.ctrl(document, 13, function () {
                    self.sync();
                    K('form[name=Myform]')[0].submit();
                });
                KindEditor.ctrl(self.edit.doc, 13, function () {
                    self.sync();
                    KindEditor('form[name=Myform]')[0].submit();
                });
            }
        });
    });
});

View Code

注意几个地方:

1、kindeditor的路径问题,不要弄错了。我是MVC项目,因此我把kindeditor整个文件夹放在了根目录下的Content文件夹中。

2、设定使用编辑器表单页的form名称,例如我这儿设定为Myform。则在页面中必须有<form id="Myform">。

3、设定多行文本框textarea的名称。通过

KindEditor.create('textarea[name="content"]'

View Code

这句,在页面上的textarea的name属性就必须取名为content。

二、页面

首先在DWZ的index页中,引用kindeditor编辑要用的文件,如

<script type="text/javascript" src="kindeditor/kindeditor-min.js"></script>
<script type="text/javascript" src="kindeditor/lang/zh_CN.js"></script>

View Code

然后增加一个DWZ的页面片段

<form method="post" id="Myform" action="PostArticle" class="pageForm required-validate" onsubmit="return validateCallback(this, navTabAjaxDone)">
<textarea name="content" class="kindeditor" style="width: 680px; height: 200px;"></textarea>
<input type="submit"  value="添加" />
</form>

View Code

这样就可以了。实际上就两个名字对应上就可以了,一个是<form>标记的id属性,一个是<textarea>标记的name属性。再加上一个class=“kindeditor",这个不能少,也不能变。

效果如果:

时间: 2024-11-08 23:18:08

DWZ与KindEditor编辑器的整合的相关文章

thinkphp整合kindeditor编辑器详解

具体方法 本人使用 的是@version 4.1.2 现在应该有更新了KindEditor 4.1.4 已经发布 KindEditor主要特点 快速:体积小,加载速度快 开源:开放源代码,高水平,高品质 底层:内置自定义 DOM 类库,精确操作 DOM 扩展:基于插件的设计,所有功能都是插件,可根据需求增减功能 风格:修改编辑器风格非常容易,只需修改一个 CSS 文件 兼容:支持大部分主流浏览器,比如 IE.Firefox.Safari.Chrome.Opera 下面说一下kindeditor在

KindEditor编辑器配置参数属性

在<KindEditor-KindEditor简介>中提到了KindEditor编辑器的使用方法,通过使用KE.show(config)方法即可将编辑器添加到文档中.下面是一段源码:     KE.show = function(args) {         KE.init(args);         KE.event.ready(function() { KE.create(args.id); });     }; 从源码中可以看出,有两种使用编辑器的方法: 法一:KE.show(con

kindeditor编辑器点中图片滚动条往上顶的bug

  这篇文章主要介绍了kindeditor编辑器点中图片滚动条往上顶的bug的相关资料,需要的朋友可以参考下 比如现在我插入两张图片, 无论我点击哪张图片,里边的滚动条都会往上顶. 本来以为往上会有解决方法,一查结果没有;然后想着去官网查查,然而什么都没有,想到官网提交这个bug,结果没地方提交. 怎么解决,如果单是解决这个bug,去研究源码,我觉的是吃力不讨好的. 然后我就直接从 click.mousedown 这两个事件找起,找它们获得高度的地方,然后 感觉是的话就console.log下,

kindeditor编辑器-在asp.net中如何在后台获取kindeditor输入的内容

问题描述 在asp.net中如何在后台获取kindeditor输入的内容 js代码: var editor; KindEditor.ready(function(K) { editor = K.create('textarea[name=""content""]' { allowFileManager : true resizeType : 1 allowPreviewEmoticons : false allowImageUpload : true items :

kindeditor sql-asp.net:怎么把kindeditor编辑器的图文保存到sqlserver 数据库,并读取

问题描述 asp.net:怎么把kindeditor编辑器的图文保存到sqlserver 数据库,并读取 kindeditor存在于一个产品发布页面,主要用于批量上传产品的介绍图片,功能类似于淘宝的"发布宝贝",但是,我不知道该怎么把上传的图片保存到SqlServer2008数据库中,以便在用户点击产品的时候该产品的介绍图片能从数据库中读取.希望能得到详细地解答,不胜感激~

服务器-kindeditor编辑器跨域问题求解

问题描述 kindeditor编辑器跨域问题求解 在后台站点的kindeditor编辑器里上传图片,资源服务器是另外一个域名,根域名相同,二级域名不同,图片能上传成功,但一直提示上传中,请稍后的提示框,F12看到如下错误信息: Uncaught SecurityError: Failed to read the 'contentDocument' property from 'HTMLIFrameElement': Blocked a frame with origin "http://admi

源代码-kindeditor 编辑器创建一个视频

问题描述 kindeditor 编辑器创建一个视频 源代码 这个好像是个图片,我需要一个视频标签 解决方案 ke编辑器里面不直接放embed这种标签的,用图片替代,提交的时候采用js脚本替换回来 你要直接插视频,自己组合embed标签就行了 var html='<embed src="'+url+'"......其他的参数,如width,height,autostart.../>' 有用记得采纳

PHPCMS集成kindeditor编辑器 插入代码在页面高亮

1.先从官方下载kindeditor编辑器,官方网址:www.kindsoft.net,将全部文件解压到名为kindeditor文件夹中,将该文件夹放在/statics/js/下. 2.然后修改\phpcms\libs\classes\form.class.php文件18行 将 $str = ''; define('EDITOR_INIT', 1); 修改为: $str .= ''; $str .= '';       define('EDITOR_INIT', 1);           $s

KindEditor编辑器前台直接显示html代码了。php

问题描述 KindEditor编辑器前台直接显示html代码了.php KindEditor 4.1.10 (2013-11-23) 在后台编辑器里面加粗啥的前台显示的是直接就是html代码出来了是什么情况呢? 前台显示的就是这样的. <strong>阿斯达</strong> 数据库保存的是<strong>阿斯达</strong>这种的. 解决方案 php不要做实体替换,就是<>这种不要替换为<>这种字符,要不显示的时候要反替换回来