Javascript 是否可以在Ajax语句中使用字符串引用json对象?
所以我有一个javascript函数。它执行一个ajax调用,以检索一个充满数据的json对象。在该ajax调用的success函数中,我执行另一个ajax调用来检索该特定集合的数据列的名称。(是的,我肯定有更好的办法,但那不是我的问题)。此时我有两个变量:items(json数组)和interfaceCols(只是一个字符串数组)。然后我尝试创建一个html字符串来创建一个包含所述数据的表 以下是我的代码,可以让一切变得更加清晰:Javascript 是否可以在Ajax语句中使用字符串引用json对象?,javascript,php,jquery,ajax,json,Javascript,Php,Jquery,Ajax,Json,所以我有一个javascript函数。它执行一个ajax调用,以检索一个充满数据的json对象。在该ajax调用的success函数中,我执行另一个ajax调用来检索该特定集合的数据列的名称。(是的,我肯定有更好的办法,但那不是我的问题)。此时我有两个变量:items(json数组)和interfaceCols(只是一个字符串数组)。然后我尝试创建一个html字符串来创建一个包含所述数据的表 以下是我的代码,可以让一切变得更加清晰: $.ajax({ url:"/ryan/non
$.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);
}
});
}
});
$.ajax({
url:“/ryan/nonEmber/ajax.php?table=Interfaces”,
beforeSend:function(XMLHttpRequest){},
成功:功能(数据、文本状态){
interfaceCols=data.split(“”);
$.getJSON(“/ryan/nonEmber/getJSON.php?table=Interfaces”,函数(数据){
var项目=[];
$.each(data.post、function(key、val){
物品推送(val);
});
对于(i=0;i
给定一个JS对象,我的javascript文件在“myString=myString+”上抛出一个错误:
s = {a: 1, b: 2}
您有(至少)两个选项来访问属性:
s.a // returns 1
这似乎是您当前正在尝试执行的操作。要使用动态名称访问它,您可以使用:
s['a'] // returns 1
在您的情况下,它应该是:
items[i][interfaceCols[4]]
错误是什么?JSON看起来像什么?
post
是data
对象的对象属性,是一个数组,在$.getJSON('url.JSON',function(here){/*use here*/});
console.log(items)循环之后返回。