将Jquery对象添加为另一个对象的键

时间:2013-07-26 14:55:57

标签: javascript jquery

我可以将Jquery Object作为键添加到空白对象中。例如: -

var obj = {};//blank object

var myId = $("#myId");//jQuery Object
var myId2 = $("#myId2");//another jQuery Object

obj[myId] = "Trying to add myId as a key";
obj[myId2] = "Trying to add myId2 as a key";

但是obj的输出只包含一个键。 JS中是否可以实现上述功能?

提前致谢。

2 个答案:

答案 0 :(得分:2)

您必须使用字符串作为属性名称(例如,jquery对象的id?)。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects

答案 1 :(得分:1)

如果要保留对象的引用,可以使用对象数组而不是对象:

[
   {
      "jQueryElement": myId1,
      "note": "Trying to add myId as a key"
   },
   {
      "jQueryElement": myId2,
      "note": "Trying to add myId2 as a key"
   }
]

然后你就可以做到:

function getNoteOfJqueryObj(element) {
 element = $(element);
 for (var i in array) {
     if (array[i].jQueryElement[0] == element[0]) {
         return array[i].note;
     }
 }
 return undefined;
}

我想这是您可以选择的最佳方式之一。

JSFIDDLE