溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何解決jquery接收不到數(shù)據(jù)問題

發(fā)布時(shí)間:2021-11-22 11:06:59 來源:億速云 閱讀:140 作者:小新 欄目:web開發(fā)

這篇文章主要為大家展示了“如何解決jquery接收不到數(shù)據(jù)問題”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“如何解決jquery接收不到數(shù)據(jù)問題”這篇文章吧。

jquery接收不到數(shù)據(jù)的解決辦法:1、設(shè)置“contentType:"application/x-www-form-urlencoded"”;2、檢查post和get語句即可。

本文操作環(huán)境:Windows7系統(tǒng)、jquery3.2.1、Dell G3電腦。

ajax post  data  獲取不到數(shù)據(jù),注意 content-type的設(shè)置 、post/get

關(guān)于 jQuery data 傳遞數(shù)據(jù)。網(wǎng)上各種獲取不到數(shù)據(jù),亂碼之類的。

好吧今天我也遇到了,網(wǎng)上一查各種糾結(jié)。亂碼不管先看獲取不到數(shù)據(jù)。

因?yàn)橹耙恢庇胘Query ajax get的方式傳遞參數(shù), 默認(rèn)沒有設(shè)置過 contentType 的值。

   1:      var Skip = 49; //Number of skipped row

   2:      var Take = 14; //
   3:      function Load(Skip, Take) {
   4:          $('#pPostsLoader').html('<img src="ProgressBar/ajax-loader.gif">');
   5:          //send a query to server side to present new content
   6:          $.ajax({
   7:              type: "get",
   8:              url: "AjaxImage.ashx",
   9:              data: { Skip: Skip, Take: Take },
  10:              //contentType: "application/json; charset=utf-8",//(可以)
  11:              //contentType: "text/xml",//(可以)
  12:              //contentType:"application/x-www-form-urlencoded",//(可以)
  13:              //dataType: "string",
  14:              success: function (data) {
  15:                  if (data != "") {
  16:                      $('.thumb').append(data);
  17:                  }
  18:                  $('#pPostsLoader').empty();
  19:              }
  20:          })
  21:      };

chrome下,沒有設(shè)置contentType的值,好,我們來看jquery中的默認(rèn)情況:

如何解決jquery接收不到數(shù)據(jù)問題

默認(rèn)參數(shù)通過url參數(shù)傳遞,請(qǐng)求的內(nèi)容類型:application/x-www-form-urlencoded

一般處理文件獲取參數(shù)內(nèi)容:

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

毫無壓力,因?yàn)槲乙恢倍际沁@么干的,沒有任何問題。好了,來換一下請(qǐng)求的內(nèi)容類型:

1: //contentType: "application/json; charset=utf-8",//(可以) 2: //contentType: "text/xml",//(可以)

也都可以,參數(shù)獲取正常。

這也就是我們說的get方式,參數(shù)是跟在url后邊,與Content-Type無關(guān)。

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

1: $.ajax({ 2: type: "post",

chrome下,沒有設(shè)置contentType的值,來看默認(rèn)情況:

如何解決jquery接收不到數(shù)據(jù)問題

data數(shù)據(jù)由from表單提交,請(qǐng)求的內(nèi)容類型:application/x-www-form-urlencoded,

好了,默認(rèn)情況下一般處理文件獲取參數(shù)也可以。

可是,但是 我最開始設(shè)置的是 contentType: "application/json; charset=utf-8",看圖:

如何解決jquery接收不到數(shù)據(jù)問題

Request Paload 是什么???

調(diào)試一下,看我們的from里邊,沒有內(nèi)容:

如何解決jquery接收不到數(shù)據(jù)問題

經(jīng)測(cè)試:

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

總結(jié)一下吧:本來get/post方式都是知道的,但注意,contentType與傳遞數(shù)據(jù)匹配(本文data)。

做過模擬登錄、模擬提交數(shù)據(jù)的同學(xué)肯定都很清楚了。

以上是“如何解決jquery接收不到數(shù)據(jù)問題”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI