javascript - 使用 Jquery Ajax 调用 Asp.net Web 方法

标签 javascript jquery asp.net ajax webmethod

我正在使用jquery方法,将信息(即仅成员标识#)从客户端发送到服务器端。

服务器端实现了传统的Web Method,以捕获发送的数据并基于它执行SQL查询。

Web-service-method-using-jQuery

但是到目前为止,我在 SQL 查询之后一直将单个字符串从服务器端返回到客户端。

想知道返回一系列复杂字符串的最佳方式是什么...成员(member)标识号、开始日期、结束日期、成员(member)类型...根据成员(member)的类型,可以有多个开始日期和结束日期。

我应该研究 XML 吗?

最佳答案

返回一个数据表怎么样

 $.ajax({
type: "POST",
url: "YourPage.aspx/doSomething",
data: "{'id':'1'}",
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (data) {
    var returnedstring = data.d;
    var jsondata = $.parseJSON(data.d);//if you want your data in json
  }
});

aspx:

[WebMethod]
public static string doSomething(int id)
{
   ....
   DataTable dt = new DataTable();
   dt = anothermethodReturningdt(id)

   return JsonConvert.SerializeObject(dt);
}

您可以使用json.net用于序列化 .Net 对象

编辑

你也可以这样做

[WebMethod]
public static string doSomething(int id)
{
   Product product = new Product();
   product.Name = "Apple";
   product.Expiry = new DateTime(2008, 12, 28);
   product.Price = 3.99M;
   product.Sizes = new string[] { "Small", "Medium", "Large" };

   return JsonConvert.SerializeObject(product);
}

重点是您可以序列化任何类型的对象、数组、集合等,然后将其传递回调用脚本。

关于javascript - 使用 Jquery Ajax 调用 Asp.net Web 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14819607/

相关文章:

javascript - 如何使用 TextInput isFocused() 方法

javascript - 如何使用select2调用基于optgroup的不同函数

javascript - Nuxt.js + Auth(jwt 刷新 token )

javascript - Gmail REST API - 将邮件标记为已读

jquery - 如何使用 jquery.load() 在内容之前加载页眉和页脚

javascript - 诗农 fakeTimers 不触发

javascript - jQuery Bootstrap 密码表不工作

c# - ASP.NET网站 map ,有多重要?

c# - 只将项目添加到下拉列表一次

c# - 使用process.waitforexit()时线程被中止错误