Надстройка Gmail Создание группы радио с вводом текста - PullRequest
1 голос
/ 23 марта 2020

Я работаю над надстройкой Gmail с динамически создаваемой радиогруппой, что-то вроде: enter image description here

Как вставить текстовое поле ввода как одно опций радио?

Это то, что я до сих пор имею:

var urlGroup = CardService.newSelectionInput()
      .setType(CardService.SelectionInputType.RADIO_BUTTON)
      .setTitle("Please select a link")
      .setFieldName("radio_group")


      //How do I get a text input field here as one of the radio options
      // This is the line I cannot figure out
      urlGroup.addItem(** insert input textbox here **)

      for (var g = 0; (g < getURLsection.length); g++) {
        //shorten long links to fit in card
        if (getURLsection[g].length > 21) {
          var URLname =  getURLsection[g].slice(0, 22) + "..." + getURLsection[g].slice(-5);
        } else {
          var URLname =  getURLsection[g]
          }

        urlGroup.addItem(URLname, getURLsection[g], false)
      }

      // create radio button group
      var section = CardService.newCardSection()
      .addWidget(urlGroup)

Любые идеи о том, как это сделать?
Желательно, чтобы я хотел удалить слово Другое: и просто укажите его как .setTitle («введите ссылку здесь») в учебнике.

1 Ответ

0 голосов
/ 24 марта 2020

Чтобы сгенерировать текстовый элемент ввода в надстройках Google, вам нужно создать объект виджета TextInput , который необходимо добавить в данный раздел позже.

Как указано в документации для метода addItem , он получает параметры text и value в виде строк, поэтому вы не можете использовать объект TextInput там.

В качестве обходного пути к тому, чего вы хотите достичь, вы можете создать опцию радиогруппы со значением 'otherLink':

  urlGroup.addItem('Enter link below:', 'otherLink', false);

и виджет ввода текста, который вы вставляете в раздел группы радиокнопок:

   var textInput = CardService.newTextInput()
    .setFieldName("text_input_form_input_key")
    .setTitle("enter link here")

  // create radio button group section with text input
  var section = CardService.newCardSection()
  .addWidget(urlGroup)
  .addWidget(textInput)

Таким образом, текстовый ввод появится ниже переключателей, и вы можете работать со значением (ссылкой), введенным во входном тексте, если выбранное значение из группы переключателей - «otherLink» .

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