Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.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# RegisterStartupScript似乎无法在更新面板中进行页面回发_C#_Updatepanel_Registerstartupscript - Fatal编程技术网

C# RegisterStartupScript似乎无法在更新面板中进行页面回发

C# RegisterStartupScript似乎无法在更新面板中进行页面回发,c#,updatepanel,registerstartupscript,C#,Updatepanel,Registerstartupscript,好的-所以我在一个使用自定义日期选择器控件的系统上工作,我知道还有其他的。。但对于一致性,我希望了解我当前的问题发生的原因并解决它 因此,它是一个带有文本框的自定义用户控件,在页面上,PreRender执行以下操作: protected void Page_PreRender(object sender, EventArgs e) { string clientScript = @" $(function(){ $('#" + this.

好的-所以我在一个使用自定义日期选择器控件的系统上工作,我知道还有其他的。。但对于一致性,我希望了解我当前的问题发生的原因并解决它

因此,它是一个带有文本框的自定义用户控件,在页面上,PreRender执行以下操作:

protected void Page_PreRender(object sender, EventArgs e)
    {

        string clientScript = @"
        $(function(){
        $('#" + this.Date1.ClientID + @"').datepicker({dateFormat: 'dd/mm/yy', constrainInput: true});
        });";
        Page.ClientScript.RegisterStartupScript(this.GetType(), this.ClientID, clientScript, true);

        //Type t = this.GetType();
        //if (!Page.ClientScript.IsStartupScriptRegistered(t, this.ClientID))
        //{
        //    Page.ClientScript.RegisterStartupScript(t, this.ClientID, clientScript, true);
        //}
    }
忽略被评论掉的东西——那是我尝试了不同的东西——没有帮助

我的问题是,当我加载页面时,这些都可以正常工作。但如果我从下拉列表中选择某个内容导致页面回发,当我点击我的日期字段时,它们就会停止工作。如中所示,我应该能够点击文本框并显示一个漂亮的日历控件。但是在回发之后,就没有好的日历控件出现了

它目前全部包装在更新面板内的主机页面中。因此,我对更新面板上的内容进行了注释,日期在页面回发后生效。因此,它似乎与更新面板有关

有什么建议吗


谢谢

您是否尝试了ScriptManager而不是Page.ClientScript?我查看了一些以前使用UpdatePanels和jQuery编写的代码,以及使用ScriptManager编写的代码。我认为,如果脚本未向ScriptManager注册,则在部分回发期间脚本不可用

看起来像这样:

ScriptManager.RegisterStartupScript(Page, this.GetType(), "DatePickerScript", clientScript, true);

非常感谢:我想我以前遇到过这个问题,但记不起还有其他选择!!谢谢,节省了我很多时间。