猿问

下面这段数据,用.ajax方法POST过去就会被截断。用.post就可以完整的提交过去。

<p>ffff</p><p>fff</p><p><br></p><p><br></p><p>ffff</p><p><br></p><p><br></p><p>ffff</p><p><br></p><p><br></p><p>ffffffff</p>

POST方法就可以完整的把content内容传递过去。

var content = $("#my_textarea").val();
$.post(    "/action/savedata",
    {        "title":title,        "content":content
    },    function(msg){
        alert('sucess');
    },    "json");

.ajax方法就会截断content的内容。

var content = $("#my_textarea").val();
$.ajax({  type: "POST",  url: "/action/savedata",  dataType:"json",  data: "title="+title+"&content="+content,  success: function(msg){     alert('success');
  },
  error: function(){     alert('保存时出错!请刷新重新发布。');
  }
});


萧十郎
浏览 239回答 2
2回答

慕少森

POST的数据应该放在HTTP头里的form中,不应该以URL参数的方式传递。把你的ajax代码改成如下:var&nbsp;content&nbsp;=&nbsp;$("#my_textarea").val(); $.ajax({&nbsp;&nbsp;type:&nbsp;"POST",&nbsp;&nbsp;url:&nbsp;"/action/savedata",&nbsp;&nbsp;dataType:"json",&nbsp;&nbsp;data:&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;title:&nbsp;title,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;content:&nbsp;content &nbsp;&nbsp;},&nbsp;&nbsp;success:&nbsp;function(msg){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert('success'); &nbsp;&nbsp;}, &nbsp;&nbsp;error:&nbsp;function(){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert('保存时出错!请刷新重新发布。'); &nbsp;&nbsp;} });

三国纷争

这个应该不是.ajax和.post的问题,.ajax里头你用了网址传参的格式,可能是这个影响了数据的格式。如果data写成.post那样的话应该也是一样的。
随时随地看视频慕课网APP

相关分类

JQuery
我要回答