gpt4 book ai didi

javascript - 将动态生成的对象数组传递给 onclick 处理程序

转载 作者:行者123 更新时间:2023-11-28 15:18:40 25 4
gpt4 key购买 nike

我动态生成 onclick 处理程序并使用 attr 方法设置它。

var originReference = "myDynamicString";
var stringArray = [];
stringArray.push("Data1");
stringArray.push("Data2");
var objArray = [];
objArray.push({name: "Category 1", y: 10});
objArray.push({name: "Category 2", y: 20});

onclickReference.attr("onclick", "drawChart('" + originReference + "',[" + stringArray + "],[" + objArray + "]); return false;");

使用此代码,objArray 未正确传递给处理程序事件,因为我收到错误:

"SyntaxError: missing ] after element list".

仅使用字符串数组(无 JSON)。数据很好地传递到处理程序。

如何在 onclick 处理程序中格式化对象数组?

最佳答案

您应该使用 JSON.stringify 将 javascript 对象转换为 json 字符串。

onclickReference.attr("onclick", "drawChart('" + originReference + "'," + JSON.stringify(stringArray) + "," + JSON.stringify(jsonArray) + "); return false;");

但正如 @Rocket Hazmat 所说,使用 onclick 属性是进行事件绑定(bind)的糟糕方法。

关于javascript - 将动态生成的对象数组传递给 onclick 处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32480554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com