在我页面的PreRender事件中,我决定进行response.redirect()
。
这意味着该页面上的<script language="JavaScript" type="text/javascript">
标记中包含的javascript都不会被执行。
我希望如下:
String allJavaScript = MagicFunctionThatReturnsAllJSInTheControl(someUserControl)
ClientScript.RegisterClientScriptBlock("".GetType(), "s", allJavaScript );
Response.Redirect("~/newpage.aspx",false);
你知道如何编写一个代码,在C#/ vb.net MagicFunctionThatReturnsAllJSInTheControl(someUserControl)
由于
答案 0 :(得分:2)
根据你的上一次评论,我认为我有一个可能的解决方案,即使它没有按照原先的说法回答你的问题。
因此,您希望currentpage.aspx
中的脚本在客户端上执行,即使您正在将其重定向到newpage.aspx
。在这种情况下,您可以避免Response.Redirect()
并在客户端上执行重定向:
string redirectScript = String.Format(CultureInfo.InvariantCulture,
"window.location.href = '{0}';", ResolveUrl("~/newpage.aspx"));
ClientScript.RegisterClientScriptBlock(GetType(), "redirectScript",
redirectScript, true);
这样,客户端应该加载页面并在其中执行脚本,然后加载newpage.aspx
。如果您可以在重定向页面加载时让原始页面短暂可见,这可能会解决您的问题。