Как вызвать функцию javascript после асинхронной обратной передачи - PullRequest
0 голосов
/ 19 апреля 2011

Я использовал следующий скрипт для вызова функции javascript, только если моя страница в режиме редактирования:

protected void Page_PreRender(object sender, EventArgs e)
{
    if (EditMode)
        ClientScript.RegisterStartupScript("".GetType(), 
                                           "EnableSelectableKey", 
                                           "EnableSelectableForRolesLists();",
                                            true);
}

После того, как я добавил панель обновления, скрипт не был вызван.

Как решить проблему?

Ответы [ 2 ]

4 голосов
/ 19 апреля 2011

Использование Sys.WebForms.PageRequestManager.endRequest, как говорит Дэйв_Стотт, является более чистым способом сделать это (если есть такая вещь, как "чистота", когда речь идет о UpdatePanels и взаимодействии клиент / сервер). Но вы также можете просто изменить свой код, чтобы использовать ScriptManager вместо ClientScript, и он должен работать:

ScriptManager.RegisterStartupScript("".GetType(), 
                                           "EnableSelectableKey", 
                                           "EnableSelectableForRolesLists();",
                                            true);
1 голос
/ 19 апреля 2011

Посмотрите на: http://msdn.microsoft.com/en-us/library/bb383810.aspx

Это должно указать вам правильное направление:)

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