在重定向到另一个页面之前调用 JavaScript 函数 在 Javascript 的后面调用

Call JavaScript Function On Call Behind of Javascript before redirecting to another page

本文关键字:调用 JavaScript Javascript 函数 重定向 另一个      更新时间:2023-09-26

我有Javascript函数,我需要在vb.net中的代码隐藏处调用它。主要问题是它没有被正确调用,因为在执行此函数之前有重定向到下一页。我不想在按钮事件或类似事件上调用此函数Onclick我想在代码隐藏中的某些特定条件之后调用它。我已经尝试了以下解决方案,如果您有其他建议,请告诉我。

System.Web.UI.ScriptManager.RegisterClientScriptBlock(Page, Me.GetType(), "Script", "ShowEntryPermForm();", True)
Page.ClientScript.RegisterStartupScript(Me.GetType(), "Window", "ShowEntryPermForm();", True)

问题描述:从评论中添加

场景是,在javascript函数中,我已经检查了与项目相关的各种条件,并打开了一个弹出窗口,用户在其中输入他或她的评论。

没有必要每次函数都会打开弹出窗口。但默认情况下,页面重定向到新页面,因为函数 Javascript 和重定向到另一个窗口都在按钮的单击事件上运行。

但是现在我的要求发生了变化,现在我必须在特定条件下从代码隐藏调用函数。希望你现在得到它

您可以通过以下方式执行此操作。

window.onbeforeunload = function()
{
    //your code goes here
    return "";
}

如果您在此处返回任何内容,则浏览器将显示并询问用户是否离开该页面。在您的情况下,您不需要返回任何内容,只需运行代码。

唯一的方法是将代码和javascript分开,使它们不会相互依赖

例如,你用服务器端代码的其余部分创建一个隐藏的ASP:按钮

服务器端 :

if(...) then
page.ClientScript.RegisterStartupScript(Me.GetType(), "Window", "ShowEntryPermForm();", True)
else
  page.ClientScript.RegisterStartupScript(Me.GetType(), "Window", "otherfunction();", True)
    end if
sub IDServersideHiddenbutton(obj as object ,e as eventargs)handles IDServersideHiddenbutton.click
rest of the server side code including the redirect
end sub

客户端 :

   javascript ShowEntryPermForm()
        {
      //  javascript code
    $("#IDServersideHiddenbutton").click();
    }
javascript otherfunction()
{
//just the click 
$("#IDServersideHiddenbutton").click();
}

我真的不知道你的代码结构,但你可以操纵它来配合这个想法