jquery函数通过单击一个按钮不断重复

jquery函数通过单击一个按钮不断重复,jquery,asp.net,Jquery,Asp.net,我对jquery非常陌生,我一直在通过chrome的调试工具调试这段代码。每次单击按钮,函数都会工作,但如果再次单击,函数将执行两次,如果再次单击,函数将执行三次。我不知道为什么会这样。代码如下。这可能与项目是webforms并且其中有更新面板这一事实有关 $(document).ready(function () { $("#BlueButton").click(function () { $(this).click(function () {

我对jquery非常陌生,我一直在通过chrome的调试工具调试这段代码。每次单击按钮,函数都会工作,但如果再次单击,函数将执行两次,如果再次单击,函数将执行三次。我不知道为什么会这样。代码如下。这可能与项目是webforms并且其中有更新面板这一事实有关

 $(document).ready(function () {
    $("#BlueButton").click(function () {
        $(this).click(function () {
            alert('Hello');
        }); 
    });
});

谢谢。

是的,事情就是这样发生的。因为你是那样编码的。删除主(
“#蓝色按钮”
)中的事件绑定单击事件

$(document).ready(function () {
    $("#BlueButton").click(function () {
            alert('Hello');
    });
});

事件将按绑定次数的顺序触发。所以不要绑定重复的事件。

我应该提到,我有多个按钮是用相同的ID动态生成的。问题仍然存在,所以我不确定这是否是导致问题的原因?@Monzingo你不能有相同ID的不同按钮。这是规则。将这些元素设置为一个公共类,并将其用于事件绑定。好的,我已经对其进行了编辑,使其具有一个公共类,因此我有3个按钮具有一个公共类,但问题仍然存在。@Monzingo您必须像
$(“.commonClass”)那样绑定事件。单击(函数(){alert('Hello');})是的,我就是这样绑定的。我还是不明白为什么会这样。它可能与asp.net页面中的更新面板有关吗?