删除确认 Window
Delete Confirmation Window
<div id="modalWindow">
<button id="yes" class="k-button">Yes</button>
<button id="no" class="k-button">No</button>
</div>
<script>
var wnd;
$(document).ready(function() {
wnd = $("#modalWindow").kendoWindow({
title: "Delete confirmation",
modal: true,
visible: false,
resizable: false,
width: 300
}).data("kendoWindow");
});
function DeleteItem(e) {
e.preventDefault();
var grid = this;
var row = $(e.currentTarget).closest("tr");
wnd.center().open();
$("#yes").click(function() {
grid.removeRow(row);
wnd.close();
});
$("#no").click(function() {
wnd.close();
});
}
</script>
您好,
我正在使用带有自定义按钮列的 Telerik Grid,该按钮列打开 window 以确认删除相关行。
当我单击一行的按钮并确认删除时,它可以正常工作。
当我点击某一行的按钮时,取消删除,然后点击另一行的另一个按钮并提交删除它删除网格的每一行。
我该怎么做才能解决这个问题?
此致
每次调用 DeleteItem
函数时,您都在为 #yes
按钮设置处理程序以删除特定行。即使您取消并 select 不同的行,处理程序已经设置,并且将 运行 在以后单击按钮时。
为避免这种情况,您应该在设置新的之前清除之前设置的点击事件处理程序:
function DeleteItem(e) {
e.preventDefault();
var grid = this;
var row = $(e.currentTarget).closest("tr");
wnd.center().open();
$("#yes").unbind('click').click(function () {
grid.removeRow(row);
wnd.close();
});
$("#no").unbind('click').click(function () {
wnd.close();
});
}
<div id="modalWindow">
<button id="yes" class="k-button">Yes</button>
<button id="no" class="k-button">No</button>
</div>
<script>
var wnd;
$(document).ready(function() {
wnd = $("#modalWindow").kendoWindow({
title: "Delete confirmation",
modal: true,
visible: false,
resizable: false,
width: 300
}).data("kendoWindow");
});
function DeleteItem(e) {
e.preventDefault();
var grid = this;
var row = $(e.currentTarget).closest("tr");
wnd.center().open();
$("#yes").click(function() {
grid.removeRow(row);
wnd.close();
});
$("#no").click(function() {
wnd.close();
});
}
</script>
您好,
我正在使用带有自定义按钮列的 Telerik Grid,该按钮列打开 window 以确认删除相关行。 当我单击一行的按钮并确认删除时,它可以正常工作。 当我点击某一行的按钮时,取消删除,然后点击另一行的另一个按钮并提交删除它删除网格的每一行。
我该怎么做才能解决这个问题?
此致
每次调用 DeleteItem
函数时,您都在为 #yes
按钮设置处理程序以删除特定行。即使您取消并 select 不同的行,处理程序已经设置,并且将 运行 在以后单击按钮时。
为避免这种情况,您应该在设置新的之前清除之前设置的点击事件处理程序:
function DeleteItem(e) {
e.preventDefault();
var grid = this;
var row = $(e.currentTarget).closest("tr");
wnd.center().open();
$("#yes").unbind('click').click(function () {
grid.removeRow(row);
wnd.close();
});
$("#no").unbind('click').click(function () {
wnd.close();
});
}