我想使用data-attribute
获取div值。在这种情况下,data-pdf
。正如您在我的示例中所看到的,在我单击任一选项后,值未定义。
我做错了什么?此外,值会根据我点击的标题更改吗?我只希望一次存储一个值。
$(".pdfWrap").on("click", function (event) {
let pdfChoice = $(this).find('.pdfWrap').data('pdf');
console.log(pdfChoice);
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="pdfWrap" data-pdf="Linear Structure">
<h3 class="pdfTitle">Linear Structure</h3>
</div><div class="pdfWrap" data-pdf="Dynamic Structure">
<h3 class="pdfTitle">Dynamic Structure</h3>
</div>
&#13;
答案 0 :(得分:2)
您正在const auxHash = {};
myArray.filter(house => {
if(house.members === 3 && auxHash[house.id]) {
return false;
} else {
auxHash[house.id] = true;
return true;
}
});
注册点击处理程序,因此回调内的pdfWrap
仅为this
元素。您不需要额外执行pdfWrap
而只需获取find
值。
data-attribute
$(".pdfWrap").on("click", function(event) {
let pdfChoice = $(this).data('pdf');
console.log(pdfChoice);
});
答案 1 :(得分:0)
Here's how you can do it without jQuery in the event handler:
#!/usr/bin/php
<?php
$iloop = "0"; /* Outside the loop */
while (true){
for ($i=0;$i<=109;$i++){
$warn = "Program running hold on!!\r";
if (strlen($warn) === $iloop+1){
$iloop = "0";
}
$warn = str_split($warn);
$iloop++;
$warn[$iloop] = "\033[$i;7m".strtoupper($warn[$iloop]);
echo " \033[7m".implode($warn);
usleep(90000);
}}
&#13;
$(".pdfWrap").on("click", function(event) {
let pdfChoice = this.dataset.pdf;
console.log(pdfChoice);
});
&#13;