ajax post data 获取不到数据,注意content-type的设置post/get

  ajax post  data  获取不到数据,注意 content-type的设置 、post/get
关于 jQuery data 传递数据。网上各种获取不到数据,乱码之类的。
好吧今天我也遇到了,网上一查各种纠结。乱码不管先看获取不到数据。
因为之前一直用jQuery ajax get的方式传递参数, 默认没有设置过 contentType 的值。

      var Skip = 49; //Number of skipped row
     var Take = 14; //
     function Load(Skip, Take) {
          $('#divPostsLoader').html('<img src=http://www.update8.com/Web/Jquery/"ProgressBar/ajax-loader.gif">');
         //send a query to server side to present new content
         $.ajax({
              type: "get",
              url: "AjaxImage.ashx",
             data: { Skip: Skip, Take: Take },
              //contentType: "application/json; charset=utf-8",//(可以)
             //contentType: "text/xml",//(可以)
              //contentType:"application/x-www-form-urlencoded",//(可以)
             //dataType: "string",
              success: function (data) {
                  if (data != "") {
                     $('.thumb').append(data);
                  }
                 $('#divPostsLoader').empty();
              }
          })
     };

chrome下,没有设置contentType的值,好,我们来看默认情况:

默认参数通过url参数传递,请求的内容类型:application/x-www-form-urlencoded

一般处理文件获取参数内容:

int Skip = Convert.ToInt32(context.Request["Skip"]); 2: int Take = Convert.ToInt32(context.Request["Take"]);

毫无压力,因为我一直都是这么干的大笑,没有任何问题。好了,来换一下请求的内容类型:
 //contentType: "application/json; charset=utf-8",//(可以) 2: //contentType: "text/xml",//(可以)
 

也都可以,参数获取正常。
这也就是我们说的get方式,参数是跟在url后边,与Content-Type无关。

 

可是今天要用post方式了有木有。

$.ajax({ 2: type: "post",
chrome下,没有设置contentType的值,来看默认情况:


 

data数据由from表单提交,请求的内容类型:application/x-www-form-urlencoded,

好了,默认情况下一般处理文件获取参数也可以。

可是,但是 我最开始设置的是 contentType: "application/json; charset=utf-8",看图:

Request Paload 是什么???

调试一下,看我们的from里边,没有内容:

好吧, 到这里我们解决了 博问里那个问题(http://q.cnblogs.com/q/11342/),

本来搜索到这个博问,甚是高兴的,但是,悬而未决有木有,小伙伴不厚道啊!捧腹大笑

经测试:

              //contentType: "application/json; charset=utf-8",//(不可以)
              //contentType: "text/xml",//(不可以)
             contentType:"application/x-www-form-urlencoded",//(可以)

 

总结一下吧:本来get/post方式都是知道的,但注意,contentType与传递数据匹配(本文data)。

            做过模拟登录、模拟提交数据的同学肯定都很清楚了。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索post
, 数据
, 参数
, application
, data
, 没有post数据
, 获取不到
, ''takes
, 获取post数据
, Content-Type
, ajax获取json数据
contenttype
ajax contenttype、ajax content type、post content type、ajax contenttype类型、ajax设置contenttype,以便于您获取更多的相关知识。

时间: 2024-10-02 07:31:05

ajax post data 获取不到数据,注意content-type的设置post/get的相关文章

ajax、data获取问题。if else

问题描述 ajax.data获取问题.if else 我不明白为什么我写的if else 语句无论条件结果是否成立, data100%是能够获取到值得,我不想他获取值.该怎么改.求大神 : 解决方案 不通过增加return false阻止代码继续执行啊,你的代码只是提示信息,最后ajax还是会执行 if(...){ //.... return false } 解决方案二: 你的if条件并没有限制ajax请求啊,所以总会访问rul获取数据 解决方案三: 你的data赋值是在 data:{"user

编码-jQuery中的ajax方法获取到json数据中文会乱码

问题描述 jQuery中的ajax方法获取到json数据中文会乱码 接口如下:http://cre.mix.sina.com.cn/api/finance/topstock_display这个接口 默认返回是 gbk的编码 支持 oe=utf-8,但是xtmlhttprequest 返回的数据默认的字符编码是utf-8,后台说用oe=utf转换,求解... 解决方案 首先你这不是json,所以你需要从服务器语言上把数据转换成json再去传到前端:其次,你要把后台脚本改成utf-8编码,不知道你用

用jquery ajax从数据库获取数据实现二级联动

问题描述 用jquery ajax从数据库获取数据实现二级联动 我的思路就是一级那里搞个select,然后利用ajax返回action.然后利用ajax那里不懂.哪位大神教我怎么做? 1.这是select, function select(){ var xitong=document.getElementById("xitong").value; $.ajax({ url:'/netbank/budiao/testaj', type:'post', dataType:'json', d

json-input如何通过ajax获取后台的数据

问题描述 input如何通过ajax获取后台的数据 后台sql查询的数据,怎么通过ajax传到前台的input $(function() { $.ajax({ type : 'post', url : 'xxx.action', dataType : 'json', data : { 'Id' : $('#Id').val() }, success : function(data) { if(data != null && data.length > 0){ } }, error :

jQuery Ajax和getJSON获取后台普通json数据和层级json数据用法分析_jquery

本文实例讲述了jQuery Ajax和getJSON获取后台普通json数据和层级json数据用法.分享给大家供大家参考,具体如下: 运行效果截图如下: 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="h

jQuery使用ajax跨域获取数据的简单实例_jquery

jQuery使用ajax跨域获取数据的简单实例 var webMethod = "http://localhost:54473/Service1.asmx/HelloWorld"; jQuery.support.cors = true; //之前没有加这句老是提示no transport,我没去深想. $.ajax ({ type: "POST", contentType: "application/x-www-form-urlencoded",

jQuery中使用Ajax获取JSON格式数据示例代码_jquery

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式.JSONM文件中包含了关于"名称"和"值"的信息.有时候我们需要读取JSON格式的数据文件,在jQuery中可以使用Ajax或者 $.getJSON()方法实现. 下面就使用jQuery读取music.txt文件中的JSON数据格式信息. 首先,music.txt中的内容如下: 复制代码 代码如下: [ {"optionKey":"1"

php+ajax实时获取下拉数据程序代码

你点击需要的数据后,这个数据写如到当前输入框. 并在后面添加逗号隔开,继续输入的时候,后台处理继续输出数据以供选择. 下面我们来看实例,html代码  代码如下 复制代码 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ajax实时获取下拉数据</pre> <style><!-- .input_s{ position:relative

如何用c#获取别的网站的数据,他的数据使用ajax获取的,如何模拟ajax获取一样的数据?

问题描述 如何用c#获取别的网站的数据,他的数据使用ajax获取的,如何模拟ajax获取一样的数据? 如何用c#获取别的网站的数据,他的数据使用ajax获取的,如何模拟ajax获取一样的数据? 解决方案 参考这个:http://blog.csdn.net/htsnoopy/article/details/7094224使用C#的HttpWebRequest模拟登陆网站 解决方案二: 你可以分析下, 他的ajax请求地址, 是不是传和它一样的参数去就会返回数据. 如果不是, 你只能模拟登陆网站.