繁体   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