gpt4 book ai didi

javascript - 在 Jquery 中设置全局变量 onclick

转载 作者:太空狗 更新时间:2023-10-29 14:46:03 25 4
gpt4 key购买 nike

我想在Jquery中设置一个全局变量,这样当我点击一个列表项时,被点击的列表项的id就成为该变量的值。我有以下代码,它也在 this fiddle 中.

但是我的方式是:当您单击列表项时,该值正确地放入 console.log 中。但是之后当我单击演示 div 时,变量被重置并且未定义。

如何获取点击demo时id的值,成为点击列表项时id的值?

例如:

当我点击aaa时,点击演示框时的值应该是id-1

当我点击bbb时,点击演示框时的值应该是id-2

    <div id="demo"></div>
<ul>
<li id="id-1">aaa</li>
<li id="id-2">bbb</li>
</ul>

<script>
var id;
jQuery(document).on("click", "li", function (event) {
var id =jQuery(this).attr('id') || '';
console.log(id);
$( "#demo" ).show();
});

$(function() {
$("#demo").click(function(e) {
console.log(id);
});
});

</script>

<style>
#demo {
border: 1px solid;
display:none;
height: 100px;
width: 100px;
}
</style>

最佳答案

  var id;
jQuery(document).on("click", "li", function (event) {
//should not not var here, using var here will declare the variable id as a local variable in the handler function scope
id = jQuery(this).attr('id') || '';
console.log(id);
$("#demo").show();
});

$(function () {
$("#demo").click(function (e) {
console.log(id);
});
});

关于javascript - 在 Jquery 中设置全局变量 onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19021044/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com