好的 - 所以我正在开发一个使用自定义日期选择器控件的系统(我知道还有其他控件......但为了保持一致性,我想了解为什么我当前的问题发生并修复它)。
所以它是一个带有文本框的自定义用户控件,在 Page_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);
//}
}
忽略注释掉的东西 - 那是我尝试不同的东西 - 没有帮助。
我的问题是,当我加载页面时,这一切都工作正常。但是,如果我从下拉列表中选择某些内容会导致页面回发 - 当我单击日期字段时,它们会停止工作。就像我应该能够单击文本框一样,会出现一个漂亮的日历控件。但是回发后没有出现漂亮的日历控件!
目前它全部包含在更新面板中(在托管页面中)。因此,我注释掉了更新面板的内容,并且日期在页面回发后有效。所以它似乎与该更新面板有关。
请问有什么建议吗?
Thanks!!