sharepoint 2010. Включите JavaScript в код для всех форм отображения элементов - PullRequest
0 голосов
/ 20 сентября 2011

У меня есть Javascript, который может скрыть пустые поля из формы отображения sharepoint. http://sharepointjavascript.wordpress.com/2009/10/15/hide-empty-rows-in-dispform/

Мне нужно программно добавить этот javascript ко всем формам отображения. Я не знаю, как это сделать. Есть идеи?

Ответы [ 2 ]

1 голос
/ 20 сентября 2011

Вы можете добавить пользовательский файл шаблона, переопределяя обычный файл DefaultTemplates.ascx (в разделе ControlTemplates).

  1. Создать файл _NewTemplates.ascx (пустой). Должен также идти под ControlTemplates
  2. Скопируйте все данные регистра с оригинального ASCX
  3. Добавить шаблон ListForm, скопированный из DefaultTemplates.ascx (может потребоваться добавить еще пару шаблонов, в зависимости от типов списка, которые вы хотите поддерживать)

Теперь отредактируйте шаблон рендеринга, чтобы добавить свой JS

> 1013 *

-> добавьте свой код здесь

добавить функции или подключить внутренний файл JS

-> продолжить исходную разметку с этой точки

Сохраните файл и запустите IISRESET, вот и все

1 голос
/ 20 сентября 2011

.each перебирает все элементы, соответствующие определенному селектору.Если приведенного ниже кода недостаточно, измените селектор ("td.ms-formbody") таким образом, чтобы соответствовать выбранным элементам.

$("td.ms-formbody").each(function(){ /* Should walk through all elements */
var val = $(this).text().replace(/\s|\xA0/g,'');
    if($(this).parents().html().match('FieldName="#H#')==null){
        if(val.length==0){
            $(this).parents('tr:first').hide();
        }
    }
});

Если вы все еще застряли, укажите свой HTML-код, чтобы конкретнееответ может быть предложен.

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