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){ ...... } });