Сортировка / фильтрация списка, созданного в JavaScript, в редакторе контента SharePoint - PullRequest
2 голосов
/ 07 мая 2011

Я работаю в SharePoint 2010, и у меня есть список, который я хочу отобразить очень определенным образом.По сути, я использую Javascript, jquery и SPServices для запроса списка и построения таблицы в веб-части редактора контента со ссылками, различающимися в зависимости от имени пользователя и статуса запроса.Хорошо, это работает, но теперь я пытаюсь отсортировать / отфильтровать сгенерированную Javascript таблицу, и для меня это не суп.

Я пробовал несколько разных Javascript-скриптов, которые сортируют и фильтруют, и этот кажетсябыть тем, кто делает то, что мне нужно: http://www.javascripttoolbox.com/lib/table Это работает, если я создаю таблицу HTML в веб-части редактора контента, но если таблица не присутствует при загрузке страницы, вот где начинаются проблемы.

Любая помощь или предложения очень ценятся.

Вот несколько фрагментов кода:

<table class="table-autosort table-autofilter" id="openReqTable" bordercolor="#000000" border="1" cellspacing="0" cellpadding="5">
<thead>
    <tr>
        <th class="table-sortable:numeric table-filterable">Request ID</th>
        <th>
...
        </th>
        <th>Request Status</th>
    </tr>
</thead>
<tbody></tbody></table>
<script src="/Utilities/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="/Utilities/jquery.SPServices-0.5.7.min.js" type="text/javascript"></script>
<script type="text/javascript">
    var tableRowCount = 1;
    var query;
...

    $(document).ready(function()
    {
        currentUserVar = $().SPServices.SPGetCurrentUser({
            fieldName: "UserName",
            debug: false
        });

...

    var groupCollectionVar = $().SPServices({
                                operation: "GetGroupCollectionFromUser",
                                userLoginName: currentUserVar,
                                completefunc: groupTestFunc
                                });
});

function groupTestFunc(xData,status)
{
...
        newRow=document.getElementById('openReqTable').insertRow(tableRowCount);
        newTableColumnA=newRow.insertCell(0);
...
        newTableColumnK=newRow.insertCell(10);
...
        newTableColumnA.innerHTML=requestIDLink;
...
        newTableColumnK.innerHTML=requestStatus;
        tableRowCount++;
    });
}</script><script src="/Utilities/table.js" type="text/javascript"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...