2014-02-18 2 views
0

Я использую JavaScript, чтобы получить все флажки с именем «дни», проверить, какие из них отмечены, и добавить их значения в массив.Как связать флажки из пользовательской формы в SharePoint?

HTML флажков выглядеть следующим образом:

<input type="checkbox" name="days" value="Sunday"/>Sunday 
<input type="checkbox" name="days" value="Monday"/>Monday 

Мой сценарий, который помещает все проверенные значения в массив выглядит следующим образом:

var arr = new Array(); 

$('input[name="days"]:checked').each(function() { 
    arr.push($(this).val()); 
}); 

return arr; 

Когда я нажимаю "Отправить" (я использую Forms7), он добавляется в список SharePoint отлично.

Однако, когда я пытаюсь отредактировать этот элемент списка, все флажки не выбраны. Например, если я проверил «воскресенье» при создании элемента списка, он не будет проверяться, когда я его отредактирую.

Любые мысли о том, как привязка привязки работает в SharePoint?

ответ

1

Я понял. SharePoint использует ";#" вместо "," как разделитель для элементов массива.

Например, это то, что происходит за кадром, если я проверю флажки со значениями («один», «два», «три») и представить в элемент списка:

var arr = new Array(); 
arr.push("one"); 
arr.push("two"); 
arr.push("three"); 

Обычно arr.toString() в JavaScript приведет как:

one, two, three 

Но с SharePoint, это то, что он признает:

one;#two;#three 

Для замены запятых мне пришлось использовать arr.join(";#");. Когда я редактирую элемент списка, флажки («один», «два», «три») все еще проверяются.

0

Я рекомендую spservices http://spservices.codeplex.com/

  1. добавить библиотеку JS в виртуальный каталог и поставить ссылку на главную страницу
  2. прикрепить sript к форме, получить список значений
  3. проверки инициализации коробки, Когда N документа (форма)
Смежные вопросы