Как получить выбранное значение в блоке выбора и передать его в действие? - PullRequest
0 голосов
/ 21 мая 2018

Мне нужно передать значение окна выбора в функцию-обработчик виджета

var payment = CardService.newSelectionInput()
  .setType(CardService.SelectionInputType.DROPDOWN)
  .setTitle("payment mode")
  .setFieldName("payment_mode")
  .addItem("Debit card", "contact", false)
  .addItem("Net banking", "lead", true)
  .setOnChangeAction(CardService.newAction().setFunctionName("onModeChange"));
section.addWidget(payment);

Я ожидаю что-то вроде setFunctionName("onModeChange").setParams(payment.value)

1 Ответ

0 голосов
/ 21 мая 2018

Я думаю, что ваш сценарий почти правильный.Вы можете достичь того, что вы хотите, немного изменив.В вашем случае вы хотите получить contact или lead с помощью функции onModeChange.Если мое понимание верно, как насчет этой модификации?

В вашем скрипте вы можете получить выбранные значения следующим образом.Когда пользователь выбирает, выбранные значения немедленно отправляются на onModeChange.Пожалуйста, добавьте эту функцию в ваш скрипт.

function onModeChange(e) {
    console.log(e.formInput.payment_mode)
}

Если пользователь выбирает Debit card и Net banking, вы можете получить contact и lead в e.formInput.payment_mode соответственно.

Если вы хотите задать дополнительные значения при выборе пользователем, измените

С
.setOnChangeAction(CardService.newAction().setFunctionName("onModeChange"))
На:
.setOnChangeAction(CardService.newAction().setFunctionName("onModeChange").setParameters({key1: "value1"}))

С помощью этой модификации на onModeChange(e) вы можете получить добавленные значения с помощью e.parameters.key1.

Примечание:

  • В этом примере предполагается, что оба ваших скрипта работают, и вы можете увидеть поле выбора в аддоне gmail.Если ваш скрипт еще не работал, пожалуйста, сообщите мне.

Ссылки:

Если я неправильно понял ваш вопрос, извините.

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