javascript - 如何调用确认弹出框?

标签 javascript asp.net

如果单击 asp.net 按钮,我想显示一个确认弹出窗口(是,否)。

如果我点击是或否,它应该执行一些 C# 代码。

假设如果我点击是它会插入一条记录如果我点击否它应该更新记录

有人可以举例说明我如何实现这一目标吗?我真的很难过,因为我是 javascript 和 c# 的新手。

最佳答案

如果您想让用户取消他们刚刚点击的按钮,您可以使用 OnClientClick 属性:

<asp:Button runat="server" OnClientClick="return confirm('Are you sure?')" 
    OnClick="CSharpMethod" />

CSharpMethod 是您的代码隐藏 中的一个方法,它执行您想要运行的 C# 行(当用户接受确认时)。

此方法的签名应如下所示:

protected void CSharpMethod(object sender, EventArgs E) {
    Response.Write("Hello From Server");
}

编辑

如果你想将确认的真假结果发送到服务器,我建议你先创建一个隐藏输入:

<input type="hidden" runat="server" id="hdnConfirm" />

然后在您的 .net 按钮中

<asp:Button runat="server" OnClientClick="confirmWithUser()" 
    OnClick="CSharpMethod" />

然后创建用于 OnClientClick 的 JavaScript 函数:

function confirmWithUser(){
    document.getElementById("hdnConfirm").value = confirm('Are you sure?');
}

在您的 C# 方法中,您将能够像这样从用户那里获得响应:

protected void CSharpMethod(object sender, EventArgs E) {
    bool whatDidUserSay = Boolean.Parse(hdnConfirm.Value);

    //now do one thing or the other based on this value
}

关于javascript - 如何调用确认弹出框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8441216/

相关文章:

php - 对 php 页面进行 ajax 调用

c# - 服务器控件事件未正确触发

c# - 从用户控件内部在 Umbraco 中进行 Ajax 调用

c# - 将从 WebPartManager 派生的类移动到新程序集时如何保持个性化?

c# - 创建 Controller 时的可测试性考虑

javascript - d3.js 改变可平移图上刻度标签的位置

javascript - .replace() 在 JS 中不起作用

Javascript - callCom 方法阻止 Firefox 中的动画 gif 和计时器

javascript - 如何在 javascript 中执行我的添加函数

ASP.net Entity Framework DropDownList 源查询不返回任何结果