簡體   English   中英

jQuery Ajax請求在Asp.net MVC 4中的移動設備上出現錯誤

[英]jQuery Ajax Request is Giving Error on Mobile in Asp.net MVC 4

我在Asp.net MVC上使用jquery 1.11.1我向我的MVC Controller Action請求一個$ .ajax請求,它在桌面上工作正常,但在移動版本上卻報錯

我的jQuery Ajax請求如下:

$.ajax({
       method: 'GET',
       url: ajaxurl + 'GetListingByAjax',
       contentType: 'application/json; charset=utf-8',
       data: JSON.stringify({
           pagenumber: pageno,
           currenturl: location.href
       }),
       dataType: 'json',
       success: function (data) {
           if (data.length > 0) {
              $('#LoadMoreListings').show();
              var FullHTML = GetListingHTML(data);
              $('#loading').remove();               
              pageno++;
           }
           else {
              $('#LoadMoreListings').hide();
              $('#loading').text('No more listings to display');
           }
       },
       error: function (a,b,c) {
            alert('Exeception Description : '+c);
       }
   });

我的控制器動作是

public JsonResult GetListingByAjax(int pagenumber, string currenturl = "")
{
    var ListingItemsList = new Listing().GetListingAjax(currenturl, pagenumber, 20, 0);
    return Json(ListingItemsList, JsonRequestBehavior.AllowGet);
}

這在台式機上運行良好,當我在移動設備上運行時,它提示我內部服務器錯誤,然后我在Chrome模擬器中檢查了響應,然后顯示以下錯誤

參數字典包含用於方法'System.Web.Mvc.JsonResult GetListingAjax(Int32,System.String)的非空類型'System.Int32'的參數'pagenumber'的空條目。

然后我嘗試通過將GET方法更改為POST進行嘗試,但移動設備上的錯誤相同,而台式機上的錯誤也很好

有人可以幫我嗎,是我做錯了方法還是我需要在此代碼中添加其他任何內容才能在移動設備上運行

請幫助我提前謝謝

您在ajax URL中缺少pagenumber參數:

url: ajaxurl + 'GetListingByAjax',

應該是這樣的

url: ajaxurl + 'GetListingByAjax/2',

這樣,控制器就可以利用您告訴它要求的參數pagenumber

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM