在.on(change)中使用.on(click)的问题



在这段代码中,当我选择一个选项,然后点击按钮一切正常,但当我选择另一个选项,然后点击按钮,它首先执行pervius选项!然后是最近的一个。我该怎么修理它?(我需要把我的onclick在onchange函数)

$("select").on("change", function (e) {
let i = 1;
console.log(this.value);

$("button").click(function () {
console.log(i++);
});
});

输出如下:

option1 1 2 3 4

option2 5 1

如果你想要它只有一个事件处理程序,你必须删除之前的任何事件处理程序,你可以使用.off()来删除事件处理程序。

$("select").on("change", function (e) {
let i = 1;
console.log(this.value);

$("button").off('click').click(function () {
console.log(i++);
});
});

最新更新