Форма редактирования Sharepoint с использованием $ (). SPServices.SPGetCurrentUser () не отображается, пока я не переместлю мышь или не нажму клавишу - PullRequest
0 голосов
/ 02 февраля 2011

У меня есть пользовательский EditForm.aspx, в котором я использую Javascript, чтобы скрыть некоторые строки для некоторых пользователей.Чтобы определить текущего пользователя, я звоню $ (). SPServices.SPGetCurrentUser ().Мой код прекрасно работает на одном сервере, но на другом он делает эту странную вещь - страница редактирования не отображается, пока вы не сделаете что-то вроде перемещения мыши или нажатия клавиши.Вы просто видите пустой экран, за исключением мигающего курсора, где будет одно из текстовых полей.Как только вы перемещаете мышь или нажимаете клавишу, страница отображается мгновенно.

Чтобы сузить диапазон возможностей, я удалил весь код JavaScript, кроме этой единственной строки

<script type="text/javascript" language="javascript" src="/blah/blah/js/jquery.SPServices-0.5.8.min.js"></script>
<script type="text/javascript">
$().SPServices.SPGetCurrentUser()
</script>

изстр.Прокомментируйте, страница работает нормально.Оставьте это, и вы получите странное поведение, описанное выше.Я проверил результат функции, и он правильно предоставляет текущего пользователя.И снова на другом сервере все работает нормально.

Идеи?

1 Ответ

0 голосов
/ 07 марта 2011

Если вы посмотрите на файл SPServices.js, вы заметите, что функция расширяет несколько параметров.Одним из которых является fieldName.Вы должны передать ему fieldName, например, Title, которое вернет полное имя человека.Проблема, однако, в том, что данные не существуют, кажется, что они ломаются.Я не думаю, что на самом деле есть функция «возвращает ложь, когда пусто».

var userName = $().SPServices.SPGetCurrentUser({
fieldName: "Title"
});

SPGetCurrentUser Wiki

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