2016-12-15 1 views
0

Добрый день,Преобразовать Флажки в списке на Googleform

У меня есть форма Google с анкетирования 120 + вопросы о ней, и все его варианты одинаковы и флажком, Есть ли способ, чтобы преобразовать флажок в падать? Эти способы будут более чистыми и удобнее выбирать с помощью вкладки.

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

спасибо большое и у вас хороший день!

ответ

1

Да. Это довольно легко. Вы посмотрели на documentation? Вам просто нужно использовать FormApp и использовать FormAp.getItems(FormApp.ItemType.LIST), чтобы получить все элементы, которые являются списком. Тогда все, что вам нужно сделать, это выполнить пошаговый список и сделайте следующее:

  1. Получить текущий элемент в качестве LIST пункта (все детали по из ITEM типа)
  2. Создать новый CHECKBOX элемент
  3. Копировать название от старого элемента в новый элемент
  4. Копировать текст справки из старого элемента в новый элемент
  5. Копии требуется от старого элемента в новый элемент
  6. Копировать гр hoices от старого пункта до нового пункта
  7. Получить индексов как старых, так и новых элементов
  8. Переместить новый элемент старого индекса элемента
  9. Удалить старый элемент

Хотя я против предоставления кода и будет preffer вас напишите его сами, это так просто, что я мог бы просто дать его вам:

EDIT: Я неправильно понял вопрос и подумал, что цель состоит в том, чтобы сменить раскрывающийся список на флажок, а не флажок в раскрывающемся списке. Редактирование кода для отражения обратного хода

Чтобы отредактировать код самостоятельно, вам действительно нужно изменить только несколько строк. var itemList = form.getItems(FormApp.ItemType.LIST) изменить в соответствии с enum ItemType и изменить oldItem и newItem на as и add с соответствующими типами.

function myFunction() { 
    var form = FormApp.getActiveForm() 
    var itemList = form.getItems(FormApp.ItemType.CHECKBOX) 
    var oldItem, newItem, oldIndex, i 

    for (i = 0; i < itemList.length; i++) { 
    oldItem = itemList[i].asCheckboxItem()      //get the item as a checkbox item to gain access to the choices 
    newItem = form.addListItem()        //create a new list item (you can use any other type)   
    newItem.setTitle(oldItem.getTitle())      //copy the title 
    newItem.setHelpText(oldItem.getHelpText())     //copy the help text 
    newItem.setRequired(oldItem.isRequired())     //copy if it is required 
    newItem.setChoices(oldItem.getChoices())     //copy the choices 
    oldIndex = oldItem.getIndex()        //get where the current item is  
    form.moveItem(form.getItemById(newItem.getId()), oldIndex) //move the new item to the old items position 

// -----Another optional way to move the item---- 
// var newIndex = newItem.getIndex() 
// form.moveItem(form.getItemById(newIndex, oldIndex) 
// -----------------------------------------------  

    form.deleteItem(itemList[i])        //delete the old item 
    } 

} 
+0

Спасибо за то, что сэр @Vytautas, но код выше дает противоположный результат вместо того, чтобы конвертировать флажок в выпадающие элементы, то, что он делает, преобразует выпадающие элементы в флажки. Я пытаюсь понять код и попробовать: D – melvnberd

+1

@melvnberd извините, должно быть, неправильно понял. Это довольно легко изменить. На самом деле это простое изменение. Попробуйте сами, но я поправлю ответ – Vytautas