Skip to main content
 首页 » 编程设计

c#之asp.net web 表单应用程序中的确认框

2024年02月01日25zhengyun_ustc

如果用户想在不上传图片的情况下保存,我想通过确认消息框向用户发出警告。

代码在用户点击保存按钮时触发

if (string.IsNullOrEmpty(obj.Image)) { 
    obj.Image= null; 
    //Page.ClientScript.RegisterStartupScript(this.GetType(), "MyScript", "alert('Please Upload  Image!');", true); 
    Page.ClientScript.RegisterStartupScript(this.GetType(), "MyScript", "confirm('Are you sure you want to save without uploading  images?');", true); 
} 

上面的逻辑是为了显示确认框,但它没有显示。

除此之外,如果用户点击了 Yes 或 No 按钮,我该如何捕获?

这样我就可以相应地触发相关代码。

更新:

我可以用下面的代码显示确认框

Page.ClientScript.RegisterStartupScript(this.GetType(), "msgbxConfirm", "confirm('Are you sure?');", true); 

但我不确定如何捕获YES 或No 事件

请您参考如下方法:

要处理确认弹出框的结果 - 检查返回值。

如果单击确定,它将返回 true,否则返回 false。

如:

if(confirm('test')) { 
    alert('ok clicked') 
} else { 
    alert('cancel clicked or closed popup') 
} 

JSFiddle example code in action

编辑:评论

如果用户在确认对话框中单击确定,要重新提交表单,您需要这样的东西:

代码隐藏:

Page.ClientScript.RegisterStartupScript( 
    this.GetType(),  
    "msgbxConfirm",  
    "doConfirm();",  
    true 
); 

aspx 页面:

<script type=text/javascript> 
 
function doConfirm() { 
    if(confirm('Are you sure?') { 
        document.getElementById(<id_of_form_submit_button>).click(); 
    } 
} 
</script>