在我的 ajax 调用的数据对象中,我有这样的东西:
data: {
someVariable: []
}
当我开始 ajax 调用时,我可以在someVariable
未发送的 POST 数据中看到。
- 这是一个 mootools 问题,还是 JS 范围内的问题?
- 我怎样才能故意发送一个空数组?
在我的 ajax 调用的数据对象中,我有这样的东西:
data: {
someVariable: []
}
当我开始 ajax 调用时,我可以在someVariable
未发送的 POST 数据中看到。
I don't think you can send an empty array through an ajax call. You will need to come up with your own solution such as passing in array with an empty string[''] and handling that special case on the server side.
在查看 jquery 错误跟踪器中报告的错误时,他们说如下:
问题是没有办法以在 x-www-form-urlencoded 格式中有意义的方式序列化一个空数组。foo[bar]= 可能表示空数组、空字符串、空对象或空/未定义值,具体取决于后端选择如何解释它。由于两种序列化方式都不是真正“正确”的,并且大多数后端将其解释为“空字符串”,并且这以非常糟糕的方式打破了传统模式(根据论坛线程),我将其标记为阻止 1.6 所以它可以恢复到旧的行为。
http://bugs.jquery.com/ticket/6481#comment:12
所以,
这是javascript的限制
不。你可以做的是为一个空数组创建一个占位符,它用引号括起来,就像'[]'
在服务器端,你可以将它解释为一个新的空数组。