Как изменить размер приглашения пользователя, чтобы появилось поле, а не строка? - PullRequest
0 голосов
/ 15 февраля 2019

Я использую ui.prompt (), чтобы получить пользовательский ввод для работы остальной части моего скрипта приложений.Тем не менее, мне бы хотелось, чтобы пространство, в котором пользователь вводил свой ответ, было больше, поэтому, если ему придется набирать значительное количество (4-5 предложений), весь текст будет виден, вместо того, чтобы наводить курсор на начало /конец ввода.

Я не уверен, есть ли функция, которая позволяет мне устанавливать произвольный размер (высоту и ширину или переменную, такую ​​как «перетаскивать угол» текстового окна) длясекция ввода.

  var ui = SpreadsheetApp.getUi();

  var bodyresponse = ui.prompt(

  "The default email template is: " + 

  "\n\nIf you have any questions regarding your order, please email us directly by replying." +
  "\n\nIf you would like to update your contact information, billing/shipping address, " + 
  "or have an adjustment to make on the Purchase Order attached to this email, " +
  "please reach out to us within 7 days of receiving this Purchase Order." + 
  "\n\nThank you from Area Code 407!" +

  "\n\nWould you like to include an accompanying note? If so, include it below: \n\n\n\n ", 

  ui.ButtonSet.YES_NO);

введите описание изображения здесь

1 Ответ

0 голосов
/ 15 февраля 2019

К сожалению, функция подсказка не позволит вам сделать это.Однако вы можете достичь желаемого, сделав диалоговое окно .Затем, используя клиент-серверное взаимодействие , вы можете передать информацию обратно на серверный скрипт.

Это не идеальный пример, но общее представление о том, что необходимо сделать.

Code.gs

var htmlOutput = HtmlService
    .createHtmlFromFile('Dialog')
    .setWidth(250)
    .setHeight(300);
SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'My Title');

function dialogData(userNote){
   //Do something with userNote...
}

Dialog.html

<body>
  Hello, world!
  <p> The default email template is: </p>

  <p>If you have any questions regarding your order, please email us directly by replying. If you would like to update your contact information, billing/shipping address, or have an adjustment to make on the Purchase Order attached to this email, please
    reach out to us within 7 days of receiving this Purchase Order.</p>
  <p>Thank you from Area Code 407! </p>

  <p>Would you like to include an accompanying note? If so, include it below: </p>
  <textarea id="userNote" rows="4" cols="80"></textarea>
  <input type="button" value="Submit" onclick="returnData()" />
  <script>
    function returnData() {
      var note = document.getElementById("userNote").value
      console.log(note);
      google.script.run.onSuccessHandler(closeMe).dialogData(); //This calls a script in your main Code.gs serverside.
    }

    function closeMe() {
      google.script.host.close();
    }
  </script>
</body>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...