Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 页眉内控件上的ViewState_C#_Asp.net_Webforms_Header_Viewstate - Fatal编程技术网

C# 页眉内控件上的ViewState

C# 页眉内控件上的ViewState,c#,asp.net,webforms,header,viewstate,C#,Asp.net,Webforms,Header,Viewstate,我将我的js文件添加到代码背后的头中,如下所示: protected void Page_PreRender(object sender, EventArgs e) { if (!IsPostBack) { HtmlGenericControl js = new HtmlGenericControl("script"); js.Attributes["type"] = "text/javascript";

我将我的js文件添加到代码背后的头中,如下所示:

protected void Page_PreRender(object sender, EventArgs e)
{
        if (!IsPostBack)
        {
            HtmlGenericControl js = new HtmlGenericControl("script");
            js.Attributes["type"] = "text/javascript";
            js.Attributes["src"] = "/js/jquery.js";
            js.ID = "jquery";
            js.EnableViewState = true;
            Page.Header.Controls.Add(js);
        }
}
这在页面加载时效果很好,但我在回发时丢失了js,我希望我的控件在启用HtmlGenericControl的ViewState的情况下保持不变


有什么方法可以在页眉上持久显示ViewState,或者每次添加js时必须删除(!IsPostBack)条件吗?

控件是动态添加的,并且只有在
时才添加!IsPostBack
,ViewState可以保留值和状态,但控件必须在页面上独立存在


在您的情况下,回发后将不会添加控件,因此即使
ViewState
包含其状态,也没有可附加此状态的控件。

p.S.无论如何,除了我下面的答案之外,这肯定不是在aspx页面中包含jquery的常用方法!我知道这并不常见,但我需要这样做,因为有动态的目的,某些jquery插件应该包含某些js文件,但它们可能会被另一个插件包含。您可能应该使用脚本管理器或以正确的方式执行此操作:)我尝试使用占位符或将js文件附加到母版页标题内容,但没有成功,因此标题上似乎根本没有Viewstate