javascript - jQuery 数组设置键和值并通过 AJAX 发送数组

标签 javascript jquery ajax arrays

我想将键值对发送到我的 php 页面,但我需要从数据标签动态设置键和值。

这是我到目前为止的代码:

function send(){
    var attr = new Array();

    var key = $('#add').attr('data-key');
    var value = $('#add').attr('data-value');

    attr.push({ key : value });

    var data = {attributes: attr};

    $.ajax({
            url: "ajax.php",
            type: "POST",
            data: data,
            success: function(result) {
                alert(result)
            }
    });

}

这不是实际的代码,它只是基本功能。

问题出在这里:

attr.push({ key : value });

“key”不被视为我设置的变量。

我可以寻求帮助吗?我真的很感激。非常感谢!

最佳答案

更新:

自 ECMAScript 6 (2015) 起,可以使用 computed object property names ,当前所有浏览器和其他 JavaScript 环境都支持:

attr.push({ [key] : value });

<小时/>

原始答案:

使用bracket notation :

代替 attr.push({ key : value }); 使用

var object = {}; 
object[key] = value;
attr.push(object);

关于javascript - jQuery 数组设置键和值并通过 AJAX 发送数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22353255/

相关文章:

javascript - 使用 Jquery 在另一个元素第一次出现之前插入元素/文本

javascript - 语义嵌套 ng-model

javascript - 使用 jquery 清除单选按钮列表选择

javascript - 如何通过ajax在wordpress前端上传图片

javascript - 如何从对象调用函数

javascript - 无法访问javascript数组中的项目

javascript - jQuery UI Sortable 无法将子项拖回父项

javascript - 按钮返回我来的页面 - 带推荐人

Jquery Ajax请求不发送Post数据

javascript - ajax 调用 webmethod 在 asp.net 中未成功