Javascript Jquery$ajax函数在C中返回500个内部服务器错误#

Javascript Jquery$ajax函数在C中返回500个内部服务器错误#,javascript,c#,jquery,ajax,asp.net-ajax,Javascript,C#,Jquery,Ajax,Asp.net Ajax,当点击一个按钮时,我在页面加载后将一些数据传递到.cs文件。但调用ajax函数时,我遇到了500内部服务器错误 Ajax函数 $.ajax({ type: "POST", url: "Home.aspx/getSelectedData", data: data, contentType: "application/json; charset=

当点击一个按钮时,我在页面加载后将一些数据传递到.cs文件。但调用ajax函数时,我遇到了500内部服务器错误

Ajax函数

              $.ajax({
                type: "POST",
                url: "Home.aspx/getSelectedData",
                data: data,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                //async: true,
[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public List<pageResult> getSelectedData(string search_value)
{}
调用函数

              $.ajax({
                type: "POST",
                url: "Home.aspx/getSelectedData",
                data: data,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                //async: true,
[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public List<pageResult> getSelectedData(string search_value)
{}

contentType
是您正在发送的数据类型,因此
application/json

默认值为
application/x-www-form-urlencoded;字符集=UTF-8

如果使用
application/json
,则必须使用json.stringify()才能发送json对象

JSON.stringify()将javascript对象转换为JSON文本并存储在字符串中

$.ajax({
      type: "POST",
      url: "Home.aspx/getSelectedData",
      data: JSON.stringify(data),
      contentType: "application/json; charset=utf-8",
      dataType: "json",

contentType
是您正在发送的数据类型,因此
application/json

默认值为
application/x-www-form-urlencoded;字符集=UTF-8

如果使用
application/json
,则必须使用json.stringify()才能发送json对象

JSON.stringify()将javascript对象转换为JSON文本并存储在字符串中

$.ajax({
      type: "POST",
      url: "Home.aspx/getSelectedData",
      data: JSON.stringify(data),
      contentType: "application/json; charset=utf-8",
      dataType: "json",

将ajax类型更改为get

$.ajax({
                type: "get",
                url: "Home.aspx/getSelectedData",
                data: data,
                contentType: "application/json; charset=utf-8",
                dataType: "json",

将ajax类型更改为get

$.ajax({
                type: "get",
                url: "Home.aspx/getSelectedData",
                data: data,
                contentType: "application/json; charset=utf-8",
                dataType: "json",

像这样使用.cs文件

[WebMethod]
public static List<pageResult> getSelectedData(string search_value)
{}
[WebMethod]
公共静态列表getSelectedData(字符串搜索值)
{}

对于在aspx中调用ajax,您应该将该方法定义为Static,这样只有它才能为您工作。

像这样使用.cs文件

[WebMethod]
public static List<pageResult> getSelectedData(string search_value)
{}
[WebMethod]
公共静态列表getSelectedData(字符串搜索值)
{}

对于在aspx中调用ajax,您应该将该方法定义为Static,然后只有它才能为您工作。

服务器代码中的错误/代码隐藏-在服务器环境中打开人类可读的错误代码。这可能是有问题的:键入:“POST”[ScriptMethod(UseHttpGet=true)]alrready我尝试过不使用此选项,但这些选项不起作用您正在传递什么类型的数据?Iam正在传递服务器代码中的字符串值错误/代码隐藏-在服务器环境中打开人类可读的错误代码。可能有问题:键入:“POST”[ScriptMethod(UseHttpGet=true)]以前我没有这样做过,但这些都不起作用。你正在传递什么样的数据?我正在传递字符串值现在我得到了如下错误jquery.min.js:4 GET 500(内部服务器错误)像这样尝试url
“Home/getSelectedData”
@chozharajanNow我得到了如下错误jquery.min.js:4 GET 500(内部服务器错误)尝试像这样的url“Home/getSelectedData”@chozharajan