我知道很多人已经问过类似的问题。我已经阅读了大量给出的答案,但似乎没有一个能解决我的问题。
我有一个表单,允许用户选择一个文件并选择一个文件应该从中导入的日期。当日期小于(早于)最后一次导入期间(这是数据库中跟踪最后一次导入日期的字段)时,我想显示一个 confirmbox
以提醒用户继续导入可能覆盖一些数据。用户可以选择是继续导入或选择否取消导入。我试过了
onClientClick
方法
asp:Button
控制。问题是,它会在用户单击提交按钮后立即被触发,我不想显示确认框,直到我检查了将在服务器端完成的最后一个导入周期 C#
。我试过将返回值写入隐藏字段,如下所示:
if (confirm("This Import Process Will Overwrite Existing Data. Do You Want to Continue?")) {
document.getElementById("ans").value = "Yes";
return true;
} else {
document.getElementById("ans").value = "No";
return false;
}
那也没用。我已经从这里尝试了解决方案:Javascript confirm message problem
不知何故,我似乎无法让它与我的解决方案一起工作,因为他们正在使用一些 updatePanel
。我只使用 DatePicker
、一个 DropDownList
(用于选择要为其导入数据的客户端)和一个隐藏字段(如果需要)。如果可以的话请帮忙。我可以是上述任何一个的调整或一个全新的解决方案。谢谢。
最佳答案
试试这个,对我来说效果很好:
var c = confirm('Your message');
if (c == true)
{
document.getElementById('<%= HiddenField1.ClientID %>').value = 1;
}
else
{
document.getElementById('<%= HiddenField1.ClientID %>').value = 0;
}
您可以在后面的代码中访问 HiddenField。
关于javascript - 如何在 ASP.NET C# 中获取确认框返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39073247/