javascript - 将数组传递给 JavaScript 显示为对象

标签 javascript arrays

我有一个名为 dataArray 的多维数组,如下所示。它可能有无限制的索引 0、1、2、3。

我正在使用 codeigniter 框架。 dataArray是使用模型返回的数据库中某个表的所有数据。

0:
status: "1"
added_by: "1"
added_on: "2018-12-12 07:01:23"
approved: 0
c _id: "4"

我在添加数据表行时通过 onclick 函数传递此数组,如下所示。 (在 foreach 中)

$('#table').DataTable().row.add([
    x, //counter 
    data[j]['action'], //data in foreach
    data[j]['status_1'],
    data[j]['description'],
    data[j]['timestamp'],
    '<input type="button" value="..." onclick="openModal(\'' + dataArray + '\')">' // this is passing array
]).draw(false);

openModal 函数如下。

function openModal(data_array){
    console.log(data_array); 
}

上面的 console.log 只返回 [object Object]。我想获取数据并在此处添加一个foreach。但是数据没有显示。请对此提供帮助。

最佳答案

你需要先将参数字符串化

"<input type='button' value='foo' onclick='openModal(\"" + JSON.stringify(arr) + "\")'>";

然后在调用函数上解析

function openModal(data_array){
    console.log(JSON.parse(data_array)); 
}

关于javascript - 将数组传递给 JavaScript 显示为对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53738639/

相关文章:

javascript - 我可以检查后台运行的应用程序是否 react 原生

Javascript 添加变量并更改事件

javascript - 查找单个数组元素之间的交集

在结构中创建指向结构的指针数组

ruby - 计算 Ruby 中每个唯一对象属性的对象总和

javascript - 如何将数组导入到javascript中的函数中?

javascript - 可迭代关联数组对象

javascript - 为什么这没有被触发?

javascript - 渲染时不显示在 SVG 元素的 onload 事件中绘制的点

javascript - 具有完整日历函数生成的事件的重复事件