如何使用CKEditor在不刷新的情况下在同一页上发布?

问题描述:

CKEditor http://www.homestayterendak.com/images/ckeditor.gif如何使用CKEditor在不刷新的情况下在同一页上发布?

+0

为了澄清,CKEditor的文本是否也应该放入数据库?如果没有,则不需要AJAX调用。 – 2011-05-18 18:55:52

+0

是的。这应该。 – Azam 2011-05-18 18:57:56

试试这个:

HTML

<textarea id="CKEditor"></textarea> 
<button type="submit" id="submit">Submit</button> 
<div id="result-container"></div> 

jQuery的

注意,在AJAX调用的结果我已经设置为HTML。这使您有机会检查已发布的用于服务器端任何恶意脚本的HTML;允许某人直接将<script />标签输入到您网页的DOM中并不是一个好主意。

$(function() { 
    var editor = CKEDITOR.editor.replace('CKEditor'); // define CKEditor 

    $("#submit").click(function() { 
     var text = editor.getData(); // Use CKEditor inbuilt functionality to get the content 
     $.ajax({ 
      type: "POST", 
      url: "myscript.aspx", 
      data: "text=" + text, 
      dataType: "html", 
      success: function(data) { 
       $("#text-container").append(data); 
      }); 
     }); 
    }); 
}); 
+0

我试过类似的东西,但它不起作用。你可以在简单的输入标签上使用这种技术,但它不适用于ckeditor。 – Azam 2011-05-18 19:15:25

+0

更新了答案 – 2011-05-18 19:43:52

+0

数据是否应该与URL兼容?换句话说:URL转义文本内容。 – bart 2011-05-18 20:21:21