Установите значение в элементе управления таксономии PnP на стороне клиента - PullRequest
0 голосов
/ 14 марта 2019

У меня есть 2 элемента PnP Taxonomy для выбора в SharePoint онлайн на моей странице.Я инициализирую эти элементы управления как показано ниже:

$('#taxPickerKeywords_' + p).taxpicker({
 isMulti: false, 
 allowFillIn: true, 
 useKeywords: true, 
 termSetId: 'GUID'
}, context);

Теперь мне нужно установить значение второго элемента управления с первым значением элемента управления.Я могу получить значение из первого элемента управления, но не могу установить второе значение элемента управления, используя .val() в jQuery.

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

<div class="cam-taxpicker">
  <div class="cam-taxpicker-editor" contenteditable="true"></div>
  <div class="cam-taxpicker-button"></div>
  <input type="hidden" id="taxPickerKeywords_0">
</div>
<div class="cam-taxpicker-suggestion-container"></div>

Есть идеи или предложения по установке значения для этого элемента управления?

1 Ответ

0 голосов
/ 15 марта 2019

Я сделал обходной путь для этого.Значение устанавливалось с помощью $('#tax_2').val(value);, но оно не отображалось в редакторе.Поэтому я обновил его значение, а затем установил элемент редактора, как в первом сборщике налогов.

//setting the value of 2nd control
$('#tax_2').val(value);

//cloning the elements of 1st control's editor
var clonedVar = $('#tax_1').parent().find('.cam-taxpicker-editor').children().clone();

//emptying the 2nd control's editor if any other value is present
$('#tax_2').parent().find('.cam-taxpicker-editor').empty();

//appending the editor element to 2nd control
$('#tax_2').parent().find('.cam-taxpicker-editor').append(clonedVar);

Это сработало для меня, так как я копировал значение, уже присутствующее в одном сборщике таксономии.Я также могу прочитать эти значения и сохранить их в бэкэнд.Пользователь может даже изменить значение после копирования.

...