开发者社区> 问答> 正文

jquery ajax和post的问题,两者有什么不同?

下面这段数据,用.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('保存时出错!请刷新重新发布。');
  }
});

展开
收起
小旋风柴进 2016-03-24 09:06:23 1826 0
1 条回答
写回答
取消 提交回答
  • POST的数据应该放在HTTP头里的form中,不应该以URL参数的方式传递。

    把你的ajax代码改成如下:

    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('保存时出错!请刷新重新发布。');
      }
    });
    2019-07-17 19:11:51
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载