Закрыть или перенаправить окно вкладки с помощью скрипта Google Apps - PullRequest
1 голос
/ 16 февраля 2020

Я пытаюсь запустить скрипт, который, когда оператор if() возвращает false, закрывает окно текущей вкладки листа google или перенаправляет на другой URL-адрес (пока один из этих способов работает, это нормально для меня ).

Я понимаю, что это возможно при использовании HTML, но я не знаю HTML достаточно хорошо, чтобы сделать это.

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

      return HtmlService.createHtmlOutput(
        "<form action='http://www.google.com' method='get' id='foo'></form>" + 
        "<script>document.getElementById('foo').submit();</script>");

У кого-нибудь есть идеи?

См. код, который приведен ниже:

  if (name == password)
  {
    Browser.msgBox('You have succesfully logged in');
    sortOutSheets();
  }
  else (name != password)
  {
    var response = Browser.msgBox('Login Failed - do you want to login again?', Browser.Buttons.YES_NO);
    if(response == "yes")
      enterPassword();
    else(response == "no")
    HtmlService.createHtmlOutputFromFile('Close Window');
  }
}

Теперь я перешел к записи HTML в другом HTML файле, но все равно не повезло

1 Ответ

0 голосов
/ 17 февраля 2020

Вот шаги, которые я бы запрограммировал.

  • Показать в электронной таблице диалоговое окно с запросом пароля
  • Пользователь вводит пароль
  • Пользователь нажимает кнопку Отправить
  • Код на стороне клиента вызывает сервер и отправляет пароль к коду в файле GS
  • Код сервера проверяет пароль
  • Если пароль правильный, создайте новый HTML и откройте другой диалоговое окно
  • Открытие нового диалогового окна автоматически закроет первое диалоговое окно
  • Новое диалоговое окно будет содержать ссылку тега <a>, построенную с новым URL на сервер
  • Когда откроется новое диалоговое окно, автоматически запустите код с window.onload = function() {var aTagElement; aTagElement = document.getElementById('idOfLinkTag');aTagElement.click() }
  • Код клиента запустится автоматически, когда откроется диалоговое окно, и программно щелкните ссылку, которая откроет новое файл в той же вкладке браузера
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...