1

我使用以下 C#/jQuery 不断获得 500。任何给定的实现都可能不正确,这不是一个大问题。我只是想建立一个你好世界。如果 c# 没有参数,它会起作用,但是一旦我尝试接收数据,它就会给出 500。

[WebMethod]
public static string Test(string s)
{
    // never gets here
}

$.ajax({
    type: "POST",
    url: "ajax.aspx/" + method,
    /*async: true,*/
    data: "{data:'" + data + "'}",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (data) {
        callback(data.d);
    }
});

最新的尝试是这仍然不起作用:

[WebMethod()]
public static string Test(string data)
{
    // never gets here
    return "hello world";
}

$.ajax({
    type: "POST",
    url: "ajax.aspx/Test",
    data: "data: {data:'abc'}",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (data) {
        alert("back");
    }
});
4

2 回答 2

1

我认为您不必使用 MVC 来使其工作。我认为您传递 json 参数的方式是错误的。请检查下面的代码并尝试让我知道它是否有效。

[WebMethod()]
public static string Test(string data)
{
  // never gets here
  return "hello world";
}

$.ajax({
    type: "POST",
    url: "ajax.aspx/Test",
    data:'{"data":"abc"}',
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (response) {
      alert(response);
    }
});
于 2012-07-30T07:08:52.610 回答
0

试试这个

[HttpPost]
public ActionResult Test(string x)
{
    // never gets here
    return Json(true)
}

$.ajax({
    type: "Post",
    url: "ajax/Test",
    data: {x:'abc'},
    dataType: "json",
    success: function (data) {
       alert("back");
    }
});
于 2012-07-30T00:19:13.103 回答