如何在 asp.net 中的页面加载事件之前调用 JavaScript 确认对话框
how to call javascript confirmation dialog box before pageload event in asp.net?
这是我的服务器端代码:
protected void Page_Load(object sender, EventArgs e)
{
if (Page.IsPostBack == false)
{
string confirmValue = Request.Form["confirm_value"];
if (confirmValue == "Yes")
{
UserId = Convert.ToInt32(Request.QueryString["UserId"]);
ProgramSrNno = Convert.ToInt32(Request.QueryString["ProgramSrNo"]);
UpdateAcknowledment(UserId, ProgramSrNno);
}
}
}
这是我的javascript代码:
window.onload = Confirm();
function Confirm() {
var confirm_value = document.createElement("INPUT");
confirm_value.type = "hidden";
confirm_value.name = "confirm_value";
if (confirm("Do you want to Acknowledge?")) {
confirm_value.value = "Yes";
} else {
confirm_value.value = "No";
}
document.forms["frmAcknowledgement"].appendChild(confirm_value);
}
我希望对话框应该首先出现,然后相应地页面加载事件背后的代码工作。 如果用户选择了确定,则页面加载代码应该可以正常工作,否则不能。但是在这里,首先我的PageLoad事件背后的代码正在运行,然后它将转到JavaScript代码。
请检查这个
protected void Page_Init(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "Confirm", "if(confirm('Are you sure?')){alert('ok');}else{alert('cancel');}", true);
}
}
你不能。
PageLoad
在服务器上处理,则在执行页面加载后在客户端上执行JavaScript confirm()
。
但是你可以让javascript再次回发到服务器。如果在页面中放置隐藏字段控件并在 javascript 中设置其值,则可以在回发期间检索字段的值
标记
<asp:HiddenField ID="hidField" ClientIDMode="Static" runat="server" />
.JS
function Confirm() {
if (confirm("Do you want to Acknowledge?")) {
document.getElementById('hidField').value = "Yes";
} else {
document.getElementById('hidField').value = "No";
}
document.forms[0].submit();
}
代码隐藏
if(Page.IsPostBack)
{
string confirmValue = this.hidField.Value;
}
相关文章:
- d3-js快速事件调用问题
- 使用按钮OnClick事件调用Javascript函数
- 了解在JavaScript中(在IE中)对某个事件调用了什么函数
- 如何使用onclick事件调用AngularJS控制器
- 无法从onclick事件调用JS函数
- 当多个 JS 事件调用同一个函数时,如何处理它们
- 为什么我从 JSLint 获得从事件调用的函数的“超出范围”
- 你能用onblur事件调用一个外部Javascript吗
- jquery mobile,从事件调用转换
- 如何使用C#为特定按钮事件调用JavaScript方法
- 如何在函数内部定义一个变量以供事件调用
- 如何从onClick事件调用对象函数
- 使用promise.then时,是否可以保留在单击事件调用堆栈中
- 如何断言间谍是使用jasmine通过点击事件调用的
- 使用AngularJS对超快速keyup和keydown事件调用函数
- 为同一标记中的两个不同事件调用两个javascript方法
- 事件调用方似乎无法正常工作
- 事件调用和范围问题
- 如何在 ng-repeat 中将变量值附加到事件调用
- j查询点击事件;调用特定函数(如果可用)