如何格式化JQuery GetJSON



我用:

呼叫服务器
var url = '@Url.Action("GetWhoBowls", "Home")';
 $.getJSON(url, { "theDate": "calEvent.start" }, function (data) {
                    alert(data.name);
                });

我已经尝试了引用'theDate'甚至calEvent的所有排列。如上所述开始....在所有情况下,服务器报错(来自Firebug):

参数字典包含一个非空类型'System '的参数'theDate'的空条目。在MatchClubMVC.Controllers.HomeController中,为方法System.Web.Mvc.ActionResult GetWhoBowls(Double) .

Firebug将调用的参数显示为theDate calEvent.start

这是我的控制器方法签名

public ActionResult GetWhoBowls(double theDate)

有谁能好心地给我指路吗?

如果您期望控制器上的双引号不发送字符串(删除calEvent.start周围的简单引号,否则您将此字符串文字发送到服务器,显然不能转换为双引号):

$.getJSON(url, { theDate: calEvent.start }, function (data) {
    alert(data.name);
});

还要确保calEvent.start是一个有效的双精度值

try

public ActionResult GetWhoBowls(double? theDate)

还出现了错误,因为您在{ "theDate": "calEvent.start" }

中发送了一个空值

编辑

不知道这是否能解决问题,但试试这个

var url = '@Url.Action("GetWhoBowls", "Home")';
 $.getJSON(url, { theDate: "calEvent.start" }, function (data) {
                    alert(data.name);
                });

并像这样修改操作结果

public ActionResult GetWhoBowls(double theDate)
{
  return(data,JsonRequestBehavior.AllowGet);
}
如果您从客户端发送null
,则会给出相同的错误。

相关内容

  • 没有找到相关文章

最新更新