当我执行 onClick 事件时,我试图将数据推送到数组中。
function clickCard() {
$(document).on('click', '.card', function() {
$(this).addClass('visible');
var cardValue = $(this).attr('src');
matchOrNot.push(cardValue);
})
}
我正在尝试将图像的 src 放入数组中,并且它需要是我单击的特定图像(此)。希望这是有道理的。
当我尝试此操作时,我得到变量 matchOrNot 的“未定义”。
如果我以带有符号 [0] 的选择器为目标,但我想得到它,则此函数有效。
有什么想法吗?
最佳答案
类似这样的吗?
var A = []
$('.card').on('click', e => {
let $this = $(e.currentTarget)
$this.addClass('visible')
let cardValue = $this.attr('src');
A.push(cardValue);
console.log(A)
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<img class="card" src="https://dummyimage.com/100x100/000/fff" />
<img class="card" src="https://dummyimage.com/100x100/fff/000" />
更新:
看到你的代码后我发现了问题。不是 matchOrNot
未定义,而是 src
属性未定义,因为您当前的目标不是图像,而是外部 div
。您需要首先找到其中的图像:
$this.find('img').attr('src')
关于javascript - onClick 将其插入数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57740289/