Навигация по страницам не работает в финале для итерации цикла - PullRequest
0 голосов
/ 13 октября 2018

Я создал форму Google с помощью скрипта Apps.Форма использует вложенный for-loop, который направляет пользователя к правильному разделу формы.Однако для самого внутреннего цикла, когда пользователь щелкает, чтобы отправить свой ответ, последняя итерация этого цикла не предоставляет опцию SUBMIT - он говорит: «перейти к следующему разделу».

Чтобы дать вам некоторый контекст.Это система встреч для родителей на вечер, когда пользователи сначала выбирают учителя, а затем день, когда они хотели бы назначить встречу.Последним днем ​​в цикле for является четверг, в котором говорится «ПРОДОЛЖИТЬ НА СЛЕДУЮЩИЙ РАЗДЕЛ», когда следует сказать «ОТПРАВИТЬ».

Форма работает для каждого второго дня до цикла четверга, и я не уверен, почему.

Среда

Четверг

Я указал часть кода, которую необходимо исправить звездочкой (*)

function updateForms() {
  var setUpSheet = ss.getSheetByName('Set-Up')
  var times = setUpSheet.getRange(2, 2, setUpSheet.getLastRow()-1,1).getValues()
  var teacherNames = setUpSheet.getRange(2, 1, setUpSheet.getLastRow()-1, 1).getValues()
  Logger.log(teacherNames)

  var appointmentRange = setUpSheet.getRange("C2:C").getValues()
  var appointmentRangeCount = appointmentRange.filter(String).length
  var appointmentDays = setUpSheet.getRange(2, 3, appointmentRangeCount, 1).getValues()
  Logger.log(appointmentDays)

// Opening page where user selects the teacher

  var page1 = form.addPageBreakItem()
  page1.setTitle('Parent\'s Evening Appointment System')
  var item = form.addListItem()
  item.setRequired(true)
  var teacherPages = []

  for (var n in teacherNames) {
    var appointmentPages = []
    var teacherName = teacherNames[n]
    Logger.log(teacherName)
    var newPage = form.addPageBreakItem().setTitle(teacherName)
    teacherPages.push(item.createChoice(teacherName, newPage))
    var item2 = form.addListItem()
    item2.setTitle('Choose Day')
    item2.setRequired(true)
    for (var i in appointmentDays) {
      var appointmentDay = appointmentDays[i]
      Logger.log(appointmentDay)
      var newPage2 = form.addPageBreakItem().setTitle(teacherName + ' ' + appointmentDay)
      appointmentPages.push(item2.createChoice(appointmentDay, newPage2))
      var item3 = form.addListItem()
      item3.setTitle(n + '. Please choose your appointment time. ' + i)
      item3.setRequired(true)
      item3.setChoiceValues(times)
      newPage2.setGoToPage(FormApp.PageNavigationType.SUBMIT)*********
    }
    item2.setChoices(appointmentPages)  
  }
  item.setTitle('Select your child\'s teacher.')
  item.setChoices(teacherPages)
  SpreadsheetApp.getActiveSpreadsheet().toast('Task Complete', 'Status');

}

Как мне решить эту проблему?

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