Javascript ScriptManager.RegisterStartupScript在特定的aspx页面上不工作
我在webproject中的所有.aspx页面中都使用了ScriptManager.RegisterStartuupScript。 它在所有页面上都有效,但在1页上无效 以下代码段来自其工作的页面:Javascript ScriptManager.RegisterStartupScript在特定的aspx页面上不工作,javascript,c#,asp.net,Javascript,C#,Asp.net,我在webproject中的所有.aspx页面中都使用了ScriptManager.RegisterStartuupScript。 它在所有页面上都有效,但在1页上无效 以下代码段来自其工作的页面: <%@ Page Language="C#" MasterPageFile="~/MasterPage.Master" AutoEventWireup="true" CodeBehind="Retour.aspx.cs" Inherits="SXSorOverview.Retour" cult
<%@ Page Language="C#" MasterPageFile="~/MasterPage.Master" AutoEventWireup="true" CodeBehind="Retour.aspx.cs" Inherits="SXSorOverview.Retour" culture="auto" meta:resourcekey="PageResource1" uiculture="auto"%>
<%@ Import Namespace="System.Threading" %>
<%@ Import Namespace="System.Globalization" %>
<script runat="server">
protected override void InitializeCulture()
{
if (Request.QueryString["Lang"] != null) {
if (Request.QueryString["Lang"].Equals("FR"))
{
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("fr-FR");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("fr-FR");
ScriptManager.RegisterStartupScript(this, GetType(), "setSelected", "javascript:window.alert('test');", true);
} else if (Request.QueryString["Lang"].Equals("EN")) {
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
ScriptManager.RegisterStartupScript(this, GetType(), "setSelected", "javascript:window.alert('test');", true);
}
else
{
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("nl-NL");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("nl-NL");
ScriptManager.RegisterStartupScript(this, GetType(), "setSelected", "javascript:window.alert('test');", true);
}
base.InitializeCulture();
}
else
{
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("nl-NL");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("nl-NL");
ScriptManager.RegisterStartupScript(this, GetType(), "setSelected", "javascript:window.alert('test');", true);
base.InitializeCulture();
}
}
</script>
以下代码段来自其不工作的页面:
<%@ Page Language="C#" MasterPageFile="~/MasterPage.Master" AutoEventWireup="true" CodeBehind="Home.aspx.cs" Inherits="SXSorOverview.Home" culture="auto" uiculture="auto"%>
<%@ Import Namespace="System.Threading" %>
<%@ Import Namespace="System.Globalization" %>
<script runat="server">
protected override void InitializeCulture()
{
if (Request.QueryString["Lang"] != null) {
if (Request.QueryString["Lang"].Equals("FR"))
{
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("fr-FR");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("fr-FR");
ScriptManager.RegisterStartupScript(this, GetType(), "setSelected", "javascript:window.alert('test');", true);
} else if (Request.QueryString["Lang"].Equals("EN")) {
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
ScriptManager.RegisterStartupScript(this, GetType(), "setSelected", "javascript:window.alert('test');", true);
}
else
{
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("nl-NL");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("nl-NL");
ScriptManager.RegisterStartupScript(this, GetType(), "setSelected", "javascript:window.alert('test');", true);
}
base.InitializeCulture();
}
else
{
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("nl-NL");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("nl-NL");
ScriptManager.RegisterStartupScript(this, GetType(), "setSelected", "javascript:window.alert('test');", true);
base.InitializeCulture();
}
}
</script>
我尝试了目前为止在互联网上找到的所有解决方案,但都无济于事。
我没有使用updatepanels。
有人知道为什么javascript没有在这一页上执行吗?javascript在这一页上呈现了吗?是的。如果我在$document.ready-function中放置testalert,就会显示警报。在这种情况下,可能是javascript中的错误。你试过调试吗?嗨,巴勃罗,我发现了问题。显然,为了让Scriptmanager.registerstartupscript正常工作,页面上必须有一个表单。