使用jQuery post或类似的异步JavaScript请求将空数组发送到服务器 - javascript

给定

$.post('dealWithStuff.php',{'fullArray':['hello','goodby'],'emptyArray':[]});

dealWithStuff.php接收

['fullArray'=>['hello','goodby'] ]

但不是

['fullArray'=>['hello','goodby'], 'emptyArray'=>[] ]

如何将emptyArray发送到服务器?

参考方案

我会给它一个裂缝。

在我们开始之前,This would be a good question for you to read over.

您不能发送空数组,因为它看起来像这样:file.php?arra[]

发送时,您需要执行以下操作:

$.post('dealWithStuff.php',{'fullArray':['hello','goodby'],'emptyArray':['']});

注意emptyArray['']而不是[]吗?
这将为您提供如下响应:

Array
(
    [fullArray] => Array
        (
            [0] => hello
            [1] => goodby
        )

    [emptyArray] => Array
        (
            [0] => 
        )

)

您将可以从后端访问它,只需从emptyArray中删除​​该子数组元素。

像这样轻松完成:

foreach($_POST['emptyArray'] as $i => $derp) {
    unset($_POST['emptyArray'][$i]);
}

假设您不需要emptyArray中的任何项目。
之后,您将获得如下所示的收益:

Array
(
    [fullArray] => Array
        (
            [0] => hello
            [1] => goodby
        )

    [emptyArray] => Array
        (
        )
)

如果我得到url(''),我该如何使用另一个URL - javascript

我是新手,正在写这篇文章,但是如果源上没有图像,那么我只有空白。有人可以告诉我,如果我正在获取背景图像,如何获取/images/no-image.jpg:url();这是我的代码:<div class="uk-clearfix uk-position-relative"> <div class="recipeb…

对ID为'abc%'的dom执行操作 - javascript

我想对ID为'abc%'的DOM进行一些操作<a id='abc1'></a> <a id='abc2'></a> <a id='abc3'></a> <a id='abc4'></a>…

Jsonp没有出现``访问控制允许来源''错误 - javascript

在我的PHP中,我喜欢这样来回显jsonp类型的“ json数据”echo $_GET['callback'] . '('.json_encode($arr).')'; 在我的js(angularjs)中,$http.get('http://example.com/app/?callbac…

提交初始化后删除某些帖子数据 - javascript

在初始化提交之后但在将数据发送到处理页面之前,是否可以过滤$ _POST表单数据?我想象过程的方式:提交->收集$ _POST数据->发送数据我想做的事:提交->收集$ _POST数据->删除某些元素->发送数据这样就不必更改处理页面以过滤掉不希望接收的元素了吗? javascript大神给出的解决方案 当然可以,您可以在JS …

Javascript历史记录。如果不是当前站点,请默认转到页面 - javascript

我在搜索结果中使用以下history.go,并具有跨浏览器可接受的结果。我希望使用PHP解决方案,但这会满足需求,直到我意识到一个更大的问题。<a href="javascript:history.go(-1)">Return To Search Results</a> 我唯一的问题是查看者来自不是源自搜索页面ht…