主题: 已解决:submit按钮换成button后,怎么把编辑器内容同步到textarea?-空值
作者: impig33, 发布日期: 2014-07-10 17:23:04, 浏览数: 4091

因为编辑器只做为表单的一部分使用,自己另加了几个input,所以在提交的时候需要对所有表单进行验空。


于是把input submit按钮换成了button,并加了onclick=doSubmit(),这样导致表单提交时,编辑没有执行editor.sync()操作,请问怎么调用?


谢谢!


.

作者: impig33, 发布日期: 2014-07-10 17:25:21
day day up
回复
作者: impig33, 发布日期: 2014-07-10 17:28:00

帮助原文

------------------------------------------------------

KindEditor的可视化操作在新创建的iframe上执行,代码模式下的textarea框也是新创建的,所以最后提交前需要执行 sync() 将HTML数据设置到原来的textarea。

KindEditor在默认情况下自动寻找textarea所属的form元素,找到form后onsubmit事件里添加editor.sync()函数,所以用form方式提交数据,不需要手动执行editor.sync()函数。

// 将编辑器的HTML数据同步到textarea editor.sync(); 
------------------------------------------------------


我在另一个函数中怎么调用kindeditor的sync求指导?


.


回复
作者: impig33, 发布日期: 2014-07-11 09:05:36
day day up
回复
作者: Roddy, 发布日期: 2014-07-11 09:50:14
回复impig33:用KindEditor.sync('#id');
回复
作者: impig33, 发布日期: 2014-07-11 10:26:56

谢楼上,我试了是可以的。谢谢!


下面是我用的方法,分享出来

---------------------------------------

    <script>
        //Kindeditor编辑器

        var editor1;

        KindEditor.ready(function(K) {
            editor1 = K.create('textarea[name="content1"]', {
            cssPath : 'kindeditor/plugins/code/prettify.css',
            uploadJson : 'kindeditor/upload_json.php',
            fileManagerJson : 'kindeditor/file_manager_json.php',
            allowFileManager : true,
            afterCreate : function() {
                var self = this;
                K.ctrl(document, 13, function() {
                    self.sync();
                    K('form[name=example]')[0].submit();
                });
                K.ctrl(self.edit.doc, 13, function() {
                    self.sync();
                    K('form[name=example]')[0].submit();
                });
            }
            });
            prettyPrint();
        });


        function doSubmit(){
            editor1.sync();
            
            if(document.getElementById("title").value.length === 0){
                alert('标题不能为空');
            }else if(document.getElementById("channelSelect").value.length <= 0){
                alert("未指定版块");
            }else if(document.getElementById("templateSelect").value.length <= 0){
                alert("未指定模板");
            }else{
                window.document.example.submit();
            }
        } 
    </script>

回复
作者: 莪叆啰, 发布日期: 2014-09-27 22:21:14
回复impig33:谢谢分享,怎么感觉 内容(kindeditor) 没有验证?
回复
发表新帖 发表回复