Kendo UIjQuery点击事件多次运行。

问题描述 投票:2回答:1

我正在使用Telerik的jQuery软件Kendo UI来创建一个模态弹出窗口。我在使用Kendo模式弹出框时遇到了一个很奇怪的问题,它包含了一个叫做 "Confirm"/"Cancel" 确认。 第一次打开确认窗口&点击任一按钮(确认或取消),窗口正常工作。第2次我打开这个弹出窗口&点击一个按钮,我的剑道的 click 事件发射两次。 第三次打开窗口,点击事件发射3次,等等。 我想不通为什么。 它应该只发射一次。

这是我的JS代码。 触发两次的点击函数在确认& 取消部分,从以下一行开始。.click(function () { :

var kendoWindow = $("#delete-confirmation").kendoWindow({
    title: "Confirm",
    resizable: false,
    modal: true,
    center: true
});

kendoWindow.data("kendoWindow")
    .center().open();

kendoWindow
    .find(".delete-confirm")
    .click(function () {
        kendoWindow.data("kendoWindow").close();
        destroyItem();
    })
   .end();

kendoWindow
    .find(".delete-cancel")
    .click(function () {
        kendoWindow.data("kendoWindow").close();
    })
   .end();

知道我做错了什么吗?

谢谢你

javascript jquery kendo-ui
1个回答
4
投票

听起来你应该只初始化一次对话框(创建它并添加处理程序)。然后每次你需要对话框显示时,你只需调用你的 "确认 "和 "取消"。

kendoWindow.data("kendoWindow").center().open();

一行代码。看起来每次你去打开对话框时,它都会添加一个新的点击处理程序,之前的处理程序和新的处理程序都会在点击事件时被调用。

© www.soinside.com 2019 - 2024. All rights reserved.