gpt4 book ai didi

javascript - 是否可以在 Ajax 语句中使用字符串来引用 json 对象?

转载 作者:行者123 更新时间:2023-11-30 17:20:52 25 4
gpt4 key购买 nike

所以我有一个 javascript 函数。它执行一次 ajax 调用,以检索一个充满数据的 json 对象。在该 ajax 调用的成功函数中,我执行另一个 ajax 调用以检索该特定集的数据列的名称。 (是的,我确定有更好的方法,但这不是我的问题)。此时我有两个变量:items(json 数组)和 interfaceCols(只是一个字符串数组)。然后我尝试创建一个 html 字符串来创建一个包含所述数据的表。

这是我的代码,它会让一切变得更加清晰:

$.ajax({
url:"/ryan/nonEmber/ajax.php?table=Interfaces",
beforeSend: function(XMLHttpRequest){},
success: function(data, textStatus) {
interfaceCols = data.split(" ");
$.getJSON("/ryan/nonEmber/getJson.php?table=Interfaces", function( data ){
var items = [];
$.each(data.post, function(key, val){
items.push(val);
});
for(i = 0; i < items.length; i++){
var myString = '<tr id = "visibleRow">';
console.log(items[i].interfaceCols[4]);
for(j = 0; j < interfaceCols.length; j++){
myString = myString + '<td id = "visibleDef">' + items[i].interfaceCols[j] +'</td>';
}
myString = myString + '</tr>';
interfaces.push(myString);
}

});
}
});

我的 javascript 文件在 "myString = myString + '<td id ='... 上抛出错误行。

我几乎肯定这是因为我只是在 "items[i]" 的末尾放置了一个字符串与 ".interfaceCols[j]"

有人可以建议一种方法吗?重点是我不必手动输入每个列名,因为我有很多表,每个表都有很多列。

最佳答案

给定一个 JS 对象 s:

s = {a: 1, b: 2}

您有(至少)两个选项来访问属性:

s.a // returns 1

这似乎是您现在正在尝试做的事情。要使用动态名称访问它,您可以使用:

s['a'] // returns 1

在你的情况下,它应该是:

items[i][interfaceCols[4]]

关于javascript - 是否可以在 Ajax 语句中使用字符串来引用 json 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25170918/

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