gpt4 book ai didi

javascript - 如何将点击处理程序添加到类中并找出点击了哪个元素?

转载 作者:数据小太阳 更新时间:2023-10-29 05:46:04 24 4
gpt4 key购买 nike

我一直在使用以下方法将点击事件添加到一个 id,我想知道我是否可以对一个类做同样的事情......我有很多项目(它们是在 for each 循环中创建的) 并且我需要能够单击它们然后拾取被单击的...这是我现有的代码

$('submit-button').bind('click', submit_click);


function submit_click() {
alert('I am clicked');
}

我想知道是否有某种方法可以将变量传递到我的点击函数中,以便我可以检查 ID?或类似的

因此

function submit_click(element) { // notice element
alert(element + ' clicked');
}

非常感谢任何帮助

谢谢

编辑

我已经尝试了以下并且在调试中“elem”是未定义的...

$('.clear').bind('click', clear_click($(this)));

function clear_click(elem)
{
alert(elem.attr("id"));
}

可行的解决方案

我有有效的解决方案,但我不完全明白为什么,我很想知道它为什么有效..

首先我尝试过

 $('.clear').bind('click', clear_click($(this)) );

这似乎工作“但是”当我加载页面时它进入“clear_click”方法而不被点击 - 奇怪......

然后我试了一下..

 $('.clear').bind('click', function() { clear_click($(this)) } );

这很好用!但我不明白为什么我必须传递一个函数,然后在这个函数中调用我的 clear_click。

谁能解释为什么 1 有效而另一个无效?

每当我需要调用回调函数或类似函数时,我应该先打开一个 function() 然后调用函数内部的方法吗?

最佳答案

$(".yourclass").click ( function() {
$(this).attr ( "id" ); //S(this) returns the current element
});

你可以这样编码

$('.yourclass').bind('click', function() { submit_click($(this)) });

function submit_click(elem)
{
alert ( elem.attr ("id" ) );
}

编辑

   $('.clear').bind('click', function() { clear_click($(this)) });

function clear_click(elem)
{
alert(elem.attr("id"));
}

这很适合你。

关于javascript - 如何将点击处理程序添加到类中并找出点击了哪个元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1915007/

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