主题: 拖拽内容无效,复制粘贴才行,为什么?
作者: 50030, 发布日期: 2010-07-13 21:05:20, 浏览数: 5130

如果从别的网页拖拽选取的内容进kindeditor后,可以看见内容,但是提交后,内容是空的。

 

但是,复制别的网页选取的内容后,再到kindeditor中粘贴,也可以看到内容,但提交后,内容有效。

 

为什么?

 

 

我还用了示例中的第一个demo01.htm也试了,确实如此。

 

 我用的是firefox3.6.3

 

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

又试了一下,无效的原因是:要在编辑框内点一下,使光标落入编辑框,才行,

 

但还又一个问题,如果编辑框内是原代码,还是出问题。说mysql     insert     出错。

作者: Roddy, 发布日期: 2010-07-13 21:35:52

现在KE自动执行setData函数,这个拖拽时没触发。解决方法是提交前执行一下KE.util.setData(id)。

mysql错误应该是HTML里的单引号没有处理,这部分和编辑器无关,但写程序一定要注意,否则会受到SQL注入攻击。

回复
作者: 50030, 发布日期: 2010-07-14 12:18:22

有执行KE.ultil.setData(id) , 我的script如下,是参照demo.php中的,但还是不行,非得在iframe中点一下,让光标落入才行。

 

        <script type="text/javascript">

        KE.show({
            id : 'elm6',             //content7 要等于 textarea id中的content_id
    //        cssPath : './index.css',
            allowFileManager : true,
          
                afterCreate : function(id) {
                    KE.event.ctrl(document, 13, function() {
                        KE.util.setData(id);
                        document.forms['form2'].submit();
                    });
                    KE.event.ctrl(KE.g[id].iframeDoc, 13, function() {
                        KE.util.setData(id);
                        document.forms['form2'].submit();
                    });
                }

        });

      </script>

 

 是加载   KE.util.setData(id);的位置不对码?

回复
作者: Roddy, 发布日期: 2010-07-14 13:05:40
那个是ctrl+enter快捷键时执行setData,点击提交按钮需要你自己添加。
回复
作者: 50030, 发布日期: 2010-07-14 13:19:58

更多的提交代码如下:


 


 


        <script type="text/javascript" charset="utf-8" src="./kindeditor/kindeditor.js"></script>       


        <script type="text/javascript">

        KE.show({

            id : 'elm6',             //content7 要等于 textarea id中的content_id

    //        cssPath : './index.css',

            allowFileManager : true,

          

                afterCreate : function(id) {

                    KE.event.ctrl(document, 13, function() {  //快捷键

                        KE.util.setData(id);

                        document.forms['form2'].submit();

                    });

                    KE.event.ctrl(KE.g[id].iframeDoc, 13, function() {  //快捷键

                        KE.util.setData(id);

                        document.forms['form2'].submit();

                    });

                   

//                  KE.event.ctrl(document, button, function() {  //点击提交

//                        KE.util.setData(id);

//                        document.forms['form2'].submit();

//                    });

//                    KE.event.ctrl(KE.g[id].iframeDoc, button, function() { //点击提交

//                        KE.util.setData(id);

//                        document.forms['form2'].submit();

//                    });                  

                }


        });

      </script>

</head>

<body>

<form name="form2" action="" method="POST">

<br />

<strong>添加记事:&nbsp;&nbsp;<?php echo date("Y-m-d H:i:s");?></strong>

<br /><br />

<textarea id="elm6" name="elm6" style="width:600px;height:300px;"></textarea>

<br /><br />

&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" name="button"  value="提交内容" />

&nbsp;&nbsp;<input type="button" name="button"  value="清空" onclick="javascript:KE.html('elm6', '');" />

&nbsp;&nbsp;(提交快捷键: Ctrl + Enter)

</form>


 


两个问题:


1.我按快捷键Ctrl+Enter后,就开了一个新窗口,而且是空的,但demo01可以。还要在看看


2.按钮,用什么方式加呢,我用button加了不对。

回复
发表新帖 发表回复