0

我有以下 JSON 对象:

var definitionsObject = {"company" : "Some information about company"};

这个对象实际上将包含很多定义,而不仅仅是一个。而且我还有一个链接点击的以下事件处理程序,它有一个包含术语“公司”的自定义“数据名称”属性:

$(".definitinOpener").click(function() {
      $this = $(this);
      var hintID = $this.attr("data-name");
      var hintText = definitionsObject.hintID;
});

所以,我要做的是获取单击链接的“数据名称”自定义属性的值,转到definitionsObject对象并获取等于“数据名称”属性值的字段值。然而,以这种方式,我总是得到“未定义”。

有人可以帮我弄清楚我到底做错了什么吗?

事先谢谢你。

4

2 回答 2

3

您可以通过两种方式在对象中查找值。

var obj = { key : 'value' }
var lookup = 'key'

console.log( obj.lookup ) //undefined
console.log( obj.key ) //value
console.log( obj[lookup] ) //value

你可能想要这个:

var hintText = definitionsObject[hintID];
于 2012-07-30T19:29:53.137 回答
0

definitionsObject.hintID不回来definitionsObject[hintId],就会回来definitionsObject['hintId']

我相信你可以做到这一点

var hintText = definitionsObject[hintId];

代替

var hintText = definitionsObject.hintID;
于 2012-07-30T19:32:21.223 回答