2014-02-20 71 views
0

使用JSON工作的第一次,我想调用存储在一个JSON文件像这样的字符串:JSON/AJAX和局部变量

var getText = function(pat,id){ 
     $.getJSON('assets/brospeak.json',function(js){ 
      $('#pim1').append(js.pat.id); 
     }); 

    } 

所以,我的意图是,patid当它被调用来查找字符串时,它会传递到getText。问题是,行$('#pim1').append(js.pat.id);中的局部变量没有正确调用,所以基本上每次我拨打getText时,它都会寻找myfile.pat.id而不是myfile.pattern.a。当我只做getJSON部分并明确告诉它字符串在哪里时,它工作正常。

赫克我做错了吗?

回答

1

使用js[pat][id]代替,如果属性名是动态的:

var getText = function(pat,id){ 
    $.getJSON('assets/brospeak.json',function(js){ 
     $('#pim1').append(js[pat][id]); 
    }); 
} 
+0

那会改变/限制构建我的JSON文件的方式吗?例如不得不把所有东西放在数组中? – zargap

+0

编辑:其实我现在想通了。谢谢! – zargap