我试图从点击的标签中获取data-scanID的值,并将其存储在名为scanID的变量中,但警报未定义。
$("#trucklist").click(function(event) {
var scanID=$(event.target).data("scanID");
alert(scanID);
});
html看起来像这样:
<ul id="trucklist">
<li data-scanID=*somedata*>
<ul>
<li>*stuff*</li>
<li>*stuff*</li>
<li>*stuff*</li>
<li>*stuff*</li>
<li>*stuff*</li>
</ul>
</li>
<li data-scanID=*somedata*>
<ul>
<li>*stuff*</li>
<li>*stuff*</li>
<li>*stuff*</li>
<li>*stuff*</li>
<li>*stuff*</li>
</ul>
</li>
<li data-scanID=*somedata*>
<ul>
<li>*stuff*</li>
<li>*stuff*</li>
<li>*stuff*</li>
<li>*stuff*</li>
<li>*stuff*</li>
</ul>
</li>
</ul>
答案 0 :(得分:5)
您的目标是ul
。试试这个:
$("#trucklist > li").click(function(event) {
var scanID=$(this).data("scanID");
alert(scanID);
});
上述内容将针对trucklist
的孩子li
并提醒您data
。
另外,我建议你将属性的值包装在引号中。
此外,数据属性不能包含大写字母。所以改变它们或它将无法工作。