我看到了类似的问题,但遗憾的是没有找到我正在寻找的答案。
我有Kendo Confirmation对话框,我需要在点击"更新"按钮:
user meetings
178787 ['287750', '151515', '158478']
576585 ['896352', '985639', '456988']
点击&#34;取消&#34;后,显示的确认框没有显示,我<button class="k-button k-primary" id="btnSave" type="button" @*name="action:Save"*@ onclick="CheckSplitCondition()">Update</button>
function CheckSplitCondition()
{
var newResolvedAmount = $('#ResolvedAmount').val();
var isSplit;
var diff = @Model.Amount - newResolvedAmount;
var msg = "Difference between Resolve Amount and Ticket Amount is:" + diff + ".\nThis Amount is going to be put in newly created ticket.\nPress 'OK' to proceed, press 'Cancel' otherwise.\n";
var dispResult = $("#displayResults");
if ((Math.abs(newResolvedAmount) <= Math.abs(@Model.Amount)) && newResolvedAmount != 0) {
//$("#displayResults").css("display", "block");
$("#displayResults").kendoConfirm({
width: "400px",
title: "Alert",
closable: true,
modal: true,
content: 'Are you sure?',
okText: "OK"
}).data("kendoConfirm").result.done(function () { SaveData(); }).fail(function () { alert('2') });
}
else {
SaveData();
}
}
告诉
&#34;无法获得财产&#39;结果&#39;未定义或空引用&#34;
不确定为什么会这样。
答案 0 :(得分:2)
Kendo Confirm基于Kendo Dialog,根据documentation删除了DOM中的HTML元素:
破坏
如有必要,销毁对话框及其模态叠加层。从DOM中删除小部件HTML元素。
这就是为什么它只在第一次工作时,你在第二次传递时收到一个空引用,因为<div>
不再存在。这种行为是典型的Kendo小部件已被破坏。
最简单的解决方案是调用kendo.confirm()
方法,如this demo。或者你可以使用jQuery每次向DOM附加一个新的<div>
,然后将其转换为一个Dialog。
希望这有帮助。