Sys не определен в SharePoint с поддержкой ajax - PullRequest
0 голосов
/ 23 февраля 2010

У меня есть приложение SharePoint, которое правильно настроено в файле web.config для asp.net ajax, но когда я пытаюсь использовать класс Sys, оно говорит, что оно не определено. Я установил SP2 и знаю, что AJAX включен, потому что панели обновления работают правильно. ScriptManager загружается на страницу. У меня есть ссылка на скрипт для регистрации внешнего файла JS, и я подтвердил, что URL-адрес правильный. Но я использую «_spBodyOnLoadFunctionNames.push (functionName ())» для вызова функции, которая выдает ошибку. Любая помощь по этому вопросу очень ценится, так как все, что я придумываю на Google, - это как интегрировать ajax в sharepoint.


JavaScript

_spBodyOnLoadFunctionNames.push(InitializeDynamicLoadingPanel());

function InitializeDynamicLoadingPanel() {
    modalLayerID = '';
    prm = Sys.WebForms.PageRequestManager.getInstance();
    IsAsyncPostBack = prm.get_isInAsyncPostBack();
    if (!IsAsyncPostBack) {
        prm.add_initializeRequest(InitializeRequestHandler);
        prm.add_beginRequest(BeginRequestHandler);
        prm.add_pageLoading(PageLoadingHandler);
        prm.add_pageLoaded(PageLoadedHandler);
        prm.add_endRequest(EndRequestHandler);
    }
}  


C #

ScriptLink.Register(page, "dynamicLoadingPanel.js", false);

1 Ответ

0 голосов
/ 24 февраля 2010

Измените первую строку на:

_spBodyOnLoadFunctionNames.push("InitializeDynamicLoadingPanel");

Ваш текущий код в основном говорит ему, чтобы он выдавал результат функции InitializeDynamicLoadingPanel, которая заставляет функцию выполняться немедленно, прежде чем сценарии ScriptManager были внедрены.

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