-1

这是我打开警报的代码我想要的是,当我按下处于警报状态的“确定”时,我可以调用方法/函数。

ClientScriptManager CSM = Page.ClientScript;
string strScript = "<script>";
strScript += "alert('There is no Bookmarked Question Available');";
strScript += "  document.getElementById('btnReview').onclick=true";

strScript += "</script>";
ScriptManager.RegisterStartupScript(this, this.GetType(), "Startup", strScript, false);
4

5 回答 5

1

alert停止代码的性能,因此一旦您关闭alert,就会导致以下方法。如果您需要确认,请使用confirm.

于 2013-11-07T11:01:18.310 回答
0

我认为当用户按下确定时你无法执行window.alert

来自 Mozilla API 说明

警报对话框应该用于不需要用户做出任何响应的消息,除了消息的确认。

对话框是模态窗口——它们阻止用户访问程序界面的其余部分,直到对话框关闭。因此,您不应过度使用任何创建对话框(或模态窗口)的函数

此外,它不会给出任何类似window.confirm gives true/false或任何callback method执行您的功能的结果。

于 2013-11-07T11:01:11.563 回答
0

如果我理解正确,您需要像这样更改代码

ClientScriptManager CSM = Page.ClientScript;
    string strScript = "<script>";
    strScript += "alert('There is no Bookmarked Question Available');";
    strScript += "  document.getElementById('btnReview').onclick();";

    strScript += "</script>";
    ScriptManager.RegisterStartupScript(this, this.GetType(), "Startup", strScript, false);

在这种情况下,在警报调用 onclick 之后,对于调用方法 Display,如果它是客户端方法,则类似这样

ClientScriptManager CSM = Page.ClientScript;
    string strScript = "<script>";
    strScript += "alert('There is no Bookmarked Question Available');";
    strScript += "  Display();";

    strScript += "</script>";
    ScriptManager.RegisterStartupScript(this, this.GetType(), "Startup", strScript, false);
于 2013-11-07T11:03:06.510 回答
0

创建一个名为“test”的 jquery/javascript 函数

function test(){
alert('There is no Bookmarked Question Available');
document.getElementById('btnReview').click();
}

现在只需从后面的代码中调用此方法即可:

ScriptManager.RegisterStartupScript(this, this.GetType(), "Startup","test();", true);

就这样

于 2013-11-07T11:04:29.037 回答
0

尝试这个:

string strScript = "<script>";
strScript += "  if (confirm('There is no Bookmarked Question Available')) { "
strScript += "  document.getElementById('btnReview').onclick=true";
strScript += " }"
strScript += "</script>";
于 2013-11-07T11:04:31.163 回答