Пользовательская форма списка - Диспетчер автозаполнения - PullRequest
0 голосов
/ 18 июня 2010

У меня есть пользовательский список Sharepoint 2007 со столбцом с именем «Менеджер» для хранения диспетчера пользователя (одна строка текста).

При создании нового элемента я хочу, чтобы NewForm.aspx автоматически заполнялПоле менеджера с менеджером пользователя.

Я знаю, что мы можем автоматически заполнять поля формы списка, используя JQuery для доступа к «Списку информации о пользователях» Sharepoint, представленному как веб-сервис, как в блоге Марка ниже:

http://sympmarc.com/2010/04/29/populating-a-sharepoint-list-form-with-the-current-user-information/

Моя проблема в том, что менеджер не хранится в «Списке информации о пользователях», поэтому я не могу получить его, как указано выше, у кого-нибудь есть идеи?

Спасибо, Nav

1 Ответ

0 голосов
/ 24 августа 2012

Это очень легко, вам нужно объявить «CAMLQuery», «CAMLRowLimit» и «CAMLViewFields» ниже «listName», я объясню это на следующем примере кода:

Вы можете получить свой CAMLQuery из списка представлений, в Sharepoint Designer откройте форму, я открыл свой список просмотра anuncio.aspx и нашел следующий код:

<View Name="your list name">
<Query> 
<OrderBy>
        <FieldRef Name="Title" Ascending="FALSE"/>
</OrderBy>
    </Query>
<ViewFields>
    <FieldRef Name="Title"/>
    <FieldRef Name="Body"/>
    <FieldRef Name="Expires"/>
</ViewFields>
    <RowLimit Paged="TRUE">30</RowLimit>
    <Toolbar Type="Standard"/>
</View>

Затем разделите запрос caml в своем коде JavaScript в зависимости от ваших потребностей или запроса списка просмотра,

   var fields ="<ViewFields>"+
        "<FieldRef Name='Title'/>"+
        "<FieldRef Name='Body'/>"+
        "<FieldRef Name='Expires'/>"+
          "</ViewFields>";
   var query = "<Query>"+ 
             "<OrderBy>"+
               "<FieldRef Name='Modified' Ascending='FALSE'/>"+
             "</OrderBy>"+
               "</Query>";

После установки CAMLQuery в переменных, измените ваш скрипт:

    $(document).ready(function() {


       $().SPServices({
         operation: "GetListItems",
         async: false,
         listName: "Your List name",

         CAMLViewFields: fields,
            CAMLQuery: query,   


            completefunc: function (xData, Status) {

             $(xData.responseXML).SPFilterNode("z:row").each(function() {

                var liHtml = "<tr> <td>" + $(this).attr("ows_Title") + "</td> </tr>";


                 $("#tasksUL").append(liHtml);

        });
      }
    });


   });


   </script>
   <table id="tasksUL"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...