JavaScript с CEWP Использование ClientContext, мне нужно добавить SRC в тег?

sharepoint.stackexchange https://sharepoint.stackexchange.com//questions/38180

Вопрос

Я новичок в SP Dev, и я пытаюсь добавить несколько CEWPS, которые ссылаются на JavaScript, я поместил в текстовые файлы и загрузил в библиотеку документов. Для функций Bland, кажется, работает нормально, однако для работы с данными и списками я не могу получить его на работу.

Ниже приведен JavaScript, где я просто пытаюсь схватить все имена списков:

<script type='text/javascript'>

function listLists()
{
alert("In the function");   
var ctx = new SP.ClientContext.get_current();
    this.oListColl = ctx.get_web().get_lists();
    ctx.load(this.oListColl);

    ctx.executeQueryAsync(Function.createDelegate(this, this.onSuccess), Function.createDelegate(this, this.onFail));
}

function onSuccess(sender, args)
{
    var listEnum = this.oListColl.getEnumerator();
    while(listEnum.moveNext())
    {
        var oList = listEnum.get_current();
        alert(oList.get_title());
    }
}

function onFail(sender, args)
{
    alert('FAIL!');
}

listLists();
</script>
.

Так что я смог сделать это в дизайнере SharePoint, однако я хотел бы узнать, как сделать его работать с библиотечным подходом. Я знаю, что в SPD мне нужно добавить целую SharePoint: ссылку на сценарий на «sp.js» под мета-тегами, и я предполагаю, что причина, по которой это не работает, в этом типе подхода нет Справка??? Если так, я просто не знаю, как или если я могу сделать это?

Так что оповещение было просто так, чтобы я мог сказать, как далеко он становится, хотя следующая строка, кажется, она остановилась (использовала еще одно предупреждение об установлении контекста, и он не вернулся). Я также просто пойду вперед и спрошу, если бы этому произведению, я хотел бы заменить предупреждение с документом .write вид ... Может кто-нибудь помочь с примером этого?

Спасибо за любую помощь; Всегда ценится!

Это было полезно?

Решение

Да, вам нужно добавить ссылку на SP.JS

 <script type="text/javascript">
  window.onload = function(){ ExecuteOrDelayUntilScriptLoaded(ViewItem, "sp.js"); };
</script>
.

Другие советы

Вот Комментарии Kai с решением

 function myfunc(){
   ExecuteOrDelayUntilScriptLoaded(listLists, "sp.js");
 }
 _spBodyOnLoadFunctionNames.push("myfunc");
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top