我试图发送具有多个值的相同参数名称,但即使在阅读SO上的帖子后也无法弄清楚如何做...我想要一个数组destination_input:
var myObject = {
search_zip: params.search_zip,
search_distance: params.search_distance,
filter_opts: params.filter_opts,
page: params.page,
destination_input: ['323 w concord pl #8, chicago, il', '11 e hubbard, chicago, il']
};
Run Code Online (Sandbox Code Playgroud)
但是这会创建一个查询字符串:
search_zip=60614&search_distance=1&filter_opts=discount_check%2Cneed_device_check%2Cauto_track_check&destination_input%5B%5D=323+w+concord+pl+%238%2C+chicago%2C+il&destination_input%5B%5D=11+e+hubbard%2C+chicago%2C+il
Run Code Online (Sandbox Code Playgroud)
正如你可以看到它不断加入%5B%5D到destination_input如&destination_input%5B%5D=11+e+hubbard%2C+chicago%2C+il
这意味着一切都在后端搞砸了.有任何想法吗?
log*_*yth 10
我假设您的后端不是PHP,因为PHP期望[]表示GET参数是多值的.这意味着你的后端将使用与数组元素相同的键处理多个GET参数,对吗?
除了这个假设,你只需要告诉jQuery在将数组转换为GET参数字符串时不会自动添加[].
为此,您必须将'traditional': true参数作为jQuery的ajax函数的选项传递.
在这里搜索'传统':http://api.jquery.com/jQuery.ajax/
| 归档时间: |
|
| 查看次数: |
3863 次 |
| 最近记录: |