Javascript 数组到 jQuery .post AJAX 调用

标签 javascript jquery arrays variables

我有一个 JAVASCRIPT 数组,如下所示:

postarray['min_price'] = 120000;
postarray['max_price'] = 150000;

我试图通过 jQuery .post 函数将它传递给 AJAX 调用,以便 .PHP 文件以这种格式获取它:

$_REQUEST['query']['min_price'] = 120000;
$_REQUEST['query']['max_price'] = 150000;

到目前为止我已经尝试过:

$.post("ajax_findproperties.php", {query: postarray},
        function(data){
            // processing function with JSON result
        }
    ,'json');

但是我运气不好。我什至尝试将 var postarray 更改为查询,然后尝试用 query.serialize() 代替括号中的变量 block ,但也没有成功。

当我在 Firebug 上检查我的状态时,AJAX 调用绝对没有设置任何 POST 变量 - 完全空白。

最佳答案

javascript 数组不是一个数组,它是一个对象。之前定义它:

var postarray = {};
postarray['min_price'] = 120000;
postarray['max_price'] = 150000;

或替换为:

var postarray = {
    min_price: 120000,
    max_price: 150000
};

现在 JSON.stringify 起作用了:

alert(JSON.stringify(postarray));

另见 example .

但是这个对象也应该在没有 JSON.stringify() 的情况下发送:

$.post("ajax_findproperties.php", {query: postarray}, ... );

关于Javascript 数组到 jQuery .post AJAX 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8773390/

相关文章:

javascript - 使用 Redux 在调度内传递许多 props

jquery - 从特定表格单元格获取 href

php - 在 php 中使用 ajax 和 jquery 时,数据在数据库中多次输入

Javascript 尽管 ID 不同,但只有第一个按钮提交到 Ajax 表单

Java多数组声明

javascript - 创建动态关联数组

javascript - 数组减少空值之和

javascript - 如何让点击标记滚动到侧边栏元素?

sql - 如何将多个重复行转换为 SQL (Postgres) 中的数组?

javascript - 从数组 javascript 动态创建列表