我想使用Ajax和WebMethod
从服务器端检索数据这是我的代码:
char[]
我的WebMethod:
$.ajax({
type: "POST",
contentType: "application/json;charset=utf-8",
url: "GPCreateCheque.aspx/getOpenRequestNo",
data:"{}",
dataType: "json",
success: function (data) {
alert(data.d);
},
error: function (result) {
alert("Error");
}
})
抛出错误
我不明白我的代码有什么问题。如果我从同一个ajax调用另一个webmethod,那可以正常工作,
在那个WebMethod我传递参数,所以我应该指定如下。
[WebMethod]
public static List<string> getOpenRequestNo()
{
string[] result = { };
List<string> records = new List<string>();
string cs = ConfigurationManager.ConnectionStrings["Connection"].ConnectionString;
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "SELECT [RequestID] FROM [Customer] WHERE Approved is null ORDER BY [ID] DESC";
con.Open();
SqlDataReader rd = cmd.ExecuteReader();
while (rd.Read())
{
records.Add(rd["RequestID"].ToString());
}
}
return records;
}
但是我不想将任何数据发送到服务器,那么我应该如何指定数据字段
更新
我发现了问题,我可以返回字符串,但是我无法在ajax上返回List。
如何在AJAX上返回字符串?
答案 0 :(得分:0)
这是我的问题的答案,最后我在Jquery.com找到了
$.ajax({
type: "POST",
contentType: "application/json;charset=utf-8",
url: "GPCreateCheque.aspx/getOpenRequestNo",
dataType: "json",
success: function (data) {
alert(data.d);
},
error: function (result) {
alert("Error");
}
})