ajax提交数据被截断的问题

最近做一个博客发布程序,使用ajax向后台提交数据,发现数据总是被截断,网上搜了些资料,罪魁祸首是特殊字符转义后的&惹的祸,现将解决办法记录下,以备后查

获取数据:

var data=ckeditor.getData();

 

方式一、用encodeURIComponent编码

data=encodeURIComponent(data);

方式二、ajax form验证

data=$("#from").serialize();

ajax提交如下

data="param="+data;
$.ajax({
    type:"POST",
    url:"test",
    data:data,////如果包含&字符的字符串会出现错误
    success:function(str){
      ......
    }
  });

方式三,使用{"":""}组合数据

$.ajax({
    type:"POST",
    url:"test",
    data:{"param":data},//使用此方式提交可避免字符串中特殊字符带来的数据截断的问题
    success:function(str){
       ......
    }
  });

 

 

posted @ 2014-04-11 17:09  忘语  阅读(626)  评论(0编辑  收藏  举报