在div中隐藏数据的替代方法?

时间:2011-02-04 00:02:30

标签: javascript jquery html

我经常发现自己将对象数据存储在隐藏的dom元素中。我很好奇是否有办法将这些数据附加到dom节点本身。当我尝试“动态”创建属性时,它似乎不起作用。使用this.something访问属性会更容易,而不是访问子中包含的html。我觉得我应该知道怎么做,但我不知道。感谢。

2 个答案:

答案 0 :(得分:9)

绝对有! jQuery的.data()

$('#someId').data('myData', someValue); // To store the data
$('#someId').data('myData'); // To retrieve it again

任何JavaScript变量都可以存储为数据 - 它不仅限于字符串。

请注意,这实际上并没有像您所说的那样将数据附加到DOM节点(应该避免)。 jQuery保存自己存储的所有数据以及要将其附加到的DOM节点的缓存。所以,它与domNode.myData = someValue不一样。

答案 1 :(得分:1)

jQuery.data是执行此操作的首选方式。