调用脚本管理器,从www.example.com注册启动脚本ASP.net

bmp9r5qi  于 2023-01-10  发布在  .NET
关注(0)|答案(3)|浏览(119)

我在从www.example.com调用javascript函数时遇到问题ASP.net;我看到的所有示例都在Button click Event中,但我想在Page_load中检查一些内容,如果结果为FALSE,则向用户显示警报并重定向到另一个页面。我尝试了这些代码,但没有一个运行,页面重定向时没有任何警报
1.

protected void Page_PreRender(object sender, EventArgs e)
{
    ScriptManager.RegisterStartupScript(this, GetType(), "YourUniqueScriptKey", 
    "alert('my message');", true);
}
protected void Page_Load(object sender, EventArgs e)
    {
    ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "Alert","alert('my message');", true);
                    Response.Redirect("~/register.aspx", false);
                    return;
  }

我也试过ScriptManager.RegisterClientScriptBlock,但没有成功。

uqcuzwp8

uqcuzwp81#

如果你想检查用javascript加载页面,那么使用

$(document).ready(function () {
    //Your code here
} );

或者在javascript中

window.onload
fnx2tebb

fnx2tebb2#

第二个代码段将不起作用,因为您要在页面发送到浏览器之前重定向响应。第一个代码段应该起作用,但是,您需要使用客户端脚本在调用alert之后立即添加重定向逻辑。您可以使用要将用户重定向到的url设置window.location属性

protected void Page_PreRender(object sender, EventArgs e)
{
    ScriptManager.RegisterStartupScript(this, GetType(), "YourUniqueScriptKey", 
    "alert('my message');window.location='YOUR_URL_HERE';", true);
}
46scxncf

46scxncf3#

你说你已经尝试过RegisterClientScriptBlock了,但没有任何效果。我在页面加载事件中使用它来设置页面上的一系列用户权限,没有任何问题。你的前端有脚本管理器吗?

<asp:ScriptManager ID="ScriptManager1" runat="server" />

它应该直接放在你的<form>标签之后,然后在你的页面加载服务器端这样调用它...

ClientScript.RegisterClientScriptBlock(this.GetType(), "callJs", "yourJsfunction();", true);

相关问题