65.9K
CodeProject 正在变化。 阅读更多。
Home

在 jQuery Ajax post 中发送 js 数组对象

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0投票)

2013 年 10 月 11 日

CPOL

1分钟阅读

viewsIcon

10892

文章标题应该为“在 jQuery 中序列化为 JSON”或类似内容,但我根据我遇到的问题进行了调整。如果你正在寻找

文章标题应该为“在 jQuery 中序列化为 JSON”或类似内容,但我根据我遇到的问题进行了调整。如果你正在寻找如何在 jQuery 中进行 ajax 调用等等…那么你可能需要继续谷歌搜索,因为这篇文章对这方面没有帮助。这篇文章主要介绍如何在 jQuery ajax 调用中将数组对象作为参数发送。

你可能知道如何在 ASP.NET Ajax 中将对象序列化为 JSON,但如果我们需要从客户端发送一个数组,我找不到任何 Microsoft 提供的特定方法。

具体情况 – 我们在 javascript 中定义了一个数组,如下所示

var cities = new Array();
cities[0] = ‘dhk’;
cities[1] = ‘ctg’;

然后我们需要将其转换为字符串,并像这样传递给 $.ajax()

$.ajax({
type: “POST”,
url: “Cities.aspx/GetCities”,
data: “{‘cities’:['dhk','ctg']}”,

市面上有很多 JSON 库,但你可能想尝试 Mark Gibson 编写的 jQuery 插件,以避免引入新的依赖。
http://jollytoad.googlepages.com/json.js
它添加了两个函数:$.toJSON(value), $.parseJSON(json_str, [safe]) 用于将你的对象解析为 JSON。

所以基本上你需要这样做。
- 创建你的数组并将其序列化为 JSON
- 将其发送到你的 Web 方法。
- 在服务器端将其作为逗号分隔的字符串接收。
- 分割字符串并将值放入数组对象中。

© . All rights reserved.