Может ли условный раздел «когда» отображать содержимое на основе параметра «содержит» или «включает»? - PullRequest
0 голосов
/ 28 ноября 2018

Я использую TBS / OpenTBS (спасибо Skrol, это круто) для создания документов Word на основе форм ввода.Одним из полей формы является флажок.Допустим, у него есть десять вариантов.Я могу нормально отображать содержимое, если выбран один параметр, но если, скажем, выбраны 4 параметра, мне нужно определить условие в моем шаблоне для того, что произойдет, если выбраны эти 4 точных параметра.Я должен был бы сделать то же самое для любой другой перестановки.

То, что я пытаюсь сделать, это использовать условный раздел на основе «когда», чтобы он вел себя так, как будто он содержит «содержит» или «включает»'параметр, но я не знаю, возможно ли это.Я хочу иметь возможность использовать этот подход в шаблоне:

  • Если отмечен вариант A (независимо от того, отмечены ли другие), выведите это
  • Если параметр B отмечен(независимо от того, отмечены ли другие), выведите
  • Если отмечен вариант C (независимо от того, отмечены ли другие), выведите что-то еще
  • и т. д. для остальных параметров
  • Если ни один из них не отмечен, ничего не выводить

Учитывая, что может быть большое количество перестановок, я не хочу определять условие для каждой отдельной перестановки.Я просто хочу, чтобы шаблон выводил определенный абзац, если отмечена опция, независимо от того, отмечены ли другие, и это будет применяться для каждого параметра.

Надеюсь, что это имеет смысл.Кто-нибудь знает, может ли TBS сделать это, пожалуйста?Большое спасибо.

1 Ответ

0 голосов
/ 18 декабря 2018

Параметр magnet + ope=mok выполняется для такого рода целей.

Используя ope=mok:1, поле TBS сохранит цель магнита, если значение поля равно 1, и удалитмагнитная мишень в других случаях.Поле TBS никогда не отображается с ope=mok.

. Если вы используете параметр noerr, ошибка не будет отображаться, если подпункт не найден.Это может случиться с элементами управления флажками HTML: они просто ничего не возвращают, когда не отмечены.

Пример шаблона: (каждый из них является абзацем)

[f_data.OptionA;noerr;ope=mok:1;magnet=tbs:p] output this
[f_data.OptionB;noerr;ope=mok:1;magnet=tbs:p] output that
[f_data.OptionC;noerr;ope=mok:1;magnet=tbs:p] output something else

Соответствующий фрагмент PHP:

$form_data = ...;
$TBS->MergeField('f_data', $form_data);
...