RegisterStartupScript не работает при обратной передаче страницы на панели обновления
Итак, я работаю в системе, которая использует пользовательский элемент управления DatePicker (я знаю, что есть другие ... но для согласованности хотел бы понять, почему моя текущая проблема происходит, и исправить ее).
Так что это пользовательский элемент управления с текстовым полем и на 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);
//}
}
Игнорировать закомментированные вещи - это я пробовал что-то другое - не помогло.
Моя проблема в том, что все это прекрасно работает, когда я загружаю страницу. Но если я выбираю что-то из выпадающего списка, вызывая обратную передачу страницы - когда я щелкаю в полях даты, они перестают работать. Как и я должен быть в состоянии щелкнуть в текстовое поле, и появляется красивый элемент управления календаря. Но после обратной передачи красивый календарь не появляется!
В настоящее время все это обернуто (на странице хостинга) внутри панели обновлений. Поэтому я комментирую материал панели обновления и даты работают после постбэка. Похоже, что-то связано с этой панелью обновления.
Любые предложения, пожалуйста?
Спасибо!!