可以循环使用data()对象吗?
假设这是我的代码:
$('#mydiv').data('bar','lorem'); $('#mydiv').data('foo','ipsum'); $('#mydiv').data('cam','dolores');
如何循环遍历?每个()可以用于吗?
解决方法
jQuery将所有数据信息存储在jQuery.cache内部变量中。可以使用这个简单但有用的插件获取与特定对象相关联的所有数据:
jQuery.fn.allData = function() { var intID = jQuery.data(this.get(0)); return(jQuery.cache[intID]); };
有了这个,你可以这样做:
$('#myelement').data('test1','yay1') .data('test2','yay2') .data('test3','yay3'); $.each($('#myelement').allData(),function(key,value) { alert(key + "=" + value); });
您可以使用matt b的建议,但这是如何与您现在所做的一样。