Обновить заголовок страницы на Timer.Tick - PullRequest
0 голосов
/ 14 июня 2010

У меня есть страница с таймером, который используется в качестве триггера на панели обновления.Страница также содержит TabContainer и несколько TabPanels.Посмотрите на этот вопрос для получения дополнительной информации.По сути, у меня есть UpdatePanel как элемент в ContentTemplate каждого TabPanel, и UpdatePanel запускается таймером.

Моя страница отображает данные, читая базу данных по каждому тику.У меня есть следующий код, запущенный для каждого Timer.Tick в моем коде:

protected void timeRefresher_Tick(object sender, EventArgs e)
{
    UpdateLivePageTitle();
}

Функция UpdateLivePageTitle() считывает новую информацию из базы данных и соответственно устанавливает Page.Title.Тем не менее, эта информация, конечно, не отправляется в браузер, потому что нет полной обратной передачи страницы - только асинхронная обратная передача на панели обновления.В результате заголовок моей страницы не обновляется до тех пор, пока вся страница не будет отправлена ​​обратно, что в первую очередь разрушает цель использования UpdatePanels.

Я полагаю, что есть способ сделать это, используяэлемент document.title JS и вызовите его из UpdateLivePageTitle ().Но на данный момент я не смог понять, как это сделать.Я попытался использовать следующее в моей функции UpdateLivePageTitle():

string updatePageTitleScript = String.Format("document.title = '{0}'", newPageTitle);
ToolkitScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "UpdatePageTitle", updatePageTitleScript, true);

Но результатом этого стало то, что мой TabContainer прекратил рендеринг.Я также не уверен, что это будет работать и с асинхронными частичными обратными вызовами страниц.Есть идеи?

Спасибо!

1 Ответ

1 голос
/ 14 июня 2010

Вы забыли ; из вашего скрипта.

О, и если я правильно помню, фреймворк сможет обновлять заголовок, если вы просто установите Page.Title.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...