CKEDITOR在看到“/”时剪切了文字

时间:2013-12-11 19:14:46

标签: javascript ckeditor ajaxform

使用CKEDITOR发送内容时遇到问题, 我使用AJAX发送内容

$("form#updateInfo").submit(function(){
    $("div#loading").html('<img class="loading" src="img/loading.gif" alt="" />');
    var content = CKEDITOR.instances['editor1'].getData();  
    $.ajax({
        url: "Sources/Ajax.php?act=updateInfo",
        type: "POST",
        data: "page="+$("input[name=page]").val()+"&content="+content,
        success: function(callback){
            $("div#loading").html('');
            if(callback != "OK"){
                $("span#cke_editor1").addClass("err");
                $("div#loading").html(error(callback));
            }else{
                $("div#loading").html(ok("Successfully update!"));
                $("div.n_error").remove();
                $("span#cke_editor1").removeClass("err");
                $("span#cke_editor1").val("");
            }
        }
    });
    return false;
});

您是否看到编辑器内容在变量中:     。CKEDITOR.instances [ 'editor1']的getData(); 我不明白为什么它不保存所有内容, 所以我开始调试代码,当他看到'/'时我已经理解了CKEDITOR中断。 我认为这是魔术quate,但不是,也许在PHP中出错了, 所以我删除了CKEDITOR并试着用常规的“textarea”来做 它的工作正常!

实施例:  内容:

  

嘿伙计们,我今天开车送亚历克斯的车,真是太有趣了!

CKEDITOR的回应:  “嘿伙计们,我有开啤酒”

Textarea的回应:  “嘿伙计们,今天我驾驶亚历克斯的车,真是太有趣了!”

我对这个故事感到绝望,也许你们中的一些人可能会帮助我。

THX!

1 个答案:

答案 0 :(得分:1)

这不是真正的POST变量的方法,我想你可能会混合使用POST和GET。

尝试使用数据格式

url: "Sources/Ajax.php?act=updateInfo",
type: "POST",
data: { 
    page: $("input[name=page]").val(),
    content: content
},
success: function(callback){ ... }

你如何在后端阅读它们? $_POST?如果没有,我怀疑这确实是一个GET / POST问题,并且该值可能会被浏览器或服务器自动转换。如果您在开发者控制台中运行CKEDITOR.instances['editor1'].getData();会发生什么?你看到完整的文字还是缩短的版本?

另外,您使用的是什么版本的CKEditor?目前,使用CKEDITOR.instances.editor.getData();更为常见。