我试图通过将数据属性名称与id链接在一起链接到div,但似乎收到错误
<div class="pod-container grid_3" data-name="#george">
<div class="pod">
<img src="img/example1.png" alt="">
</div>
</div>
<div id="george">Hello World</div>
我引用jQuery 1.8.3并使用以下代码识别div上的数据属性我点击
<script>
$('.pod-container').click(function(){
var identifyId = $(this).data('name');
console.log(identifyId);
//$(identifyId).show();
});
</script>
但是当我在控制台中登录时,我得到了。
#george testdoc.html:123
undefined testdoc.html:123
答案 0 :(得分:3)
您已经两个元素与class&#34; pod&#34;。其中一个属性为data-name
,其中一个属性不具备。{{1}}属性。每次点击都会触发两个元素上的事件处理程序。
答案 1 :(得分:1)
抓住拥有data-name
的元素。您目前正在做的只是定位.pods
,可能会或可能没有data-name
。使用以下代码,您只是具体。
$('.pod[data-name]').click(function(){
var identifyId = $(this).data('name');
console.log(identifyId);
//$(identifyId).show();
});
答案 2 :(得分:0)
你有2个元素与pod类,并有2个事件触发。内部div没有数据名属性。