小编典典

jQuery在发送时删除空数组

ajax

我有以下代码:

$.post('block_ajax.php'
    ,   {   'action': 'set_layout'
        ,   'listid': 123
        ,   'layout': []
        }
    ,   function(data) {
            // ...
        }
);

接收脚本(block_ajax.php)仅接收“ action”和“ listid”参数。当我检查使用Chrome发送的内容时,我发现“
layout”参数甚至没有发送到后端脚本。

由于空数组与缺少数组之间存在差异,因此我想让JQuery发送空数组。我发现一些迹象表明JQuery(1.6.1)似乎可以做到这一点,但没有办法阻止它这样做。JSON格式允许使用空数组和空对象,因此我认为应该可行。

有人知道要更改什么,以便JQuery可以发送空数组吗?


阅读 246

收藏
2020-07-26

共1个答案

小编典典

[""]正如上面的链接所说明的,我已经将我先前的答案留给了Rails的处理方式。


注意:特定于Rails

我不确定为什么需要发送一个空白参数。仅检查PHP脚本中参数的存在就足够了。但是,如果您确实想这样做,请使用'layout': [""]代替'layout': []。该参数应该被发送。

(此外,您可能需要重命名layoutlayout[]表明它是一个数组,但这不是必需的。)

2020-07-26