#1
by
RechinW
Hi all, I would like to ask if Otree studio is capable of moving between pages. The next button is already given, but I also want back buttons. I found many valuable codes in the demo snippets, but I am having trouble incorporating them into Otree Studio. Would ask for instructions, and thank you! RW
#2
by
Chris_oTree
Hi, I have not put these apps in oTree Studio yet (would like to do so when I get a chance), but here's how you can do it: (1) Create an includable template called 'tabs', and paste the full content from 'tabs.html' into it. (2) Create a page called "Instructions" and from Instructions.html, copy just the stuff between {{ block content }} ... {{ endblock }}, that is: <style> .tab { display: none; } </style> {{ include C.TABS_TEMPLATE }} <script> let activeTab = 0; let tabs = document.getElementsByClassName('tab'); function showCurrentTabOnly() { for (let i = 0; i < tabs.length; i++) { let tab = tabs[i]; if (i === activeTab) { tab.style.display = 'block'; tab.scrollIntoView(); } else { tab.style.display = 'none'; } } } showCurrentTabOnly(); for (let btn of document.getElementsByClassName('btn-tab')) { btn.onclick = function () { activeTab += parseInt(btn.dataset.offset); showCurrentTabOnly(); } } </script>
#3
by
RechinW
Hi Chris, Thanks for the reply! It looks like I can only edit contents in the includable template. I wonder if there is any way I can add the back button or previous tab in "pages" where I used "form_fields" to import functions. Thanks for your help! RW
#4
by
Chris_oTree
You create 1 regular page called "Instructions" that can have form_fields, etc. And create 1 includable template called 'tabs' that gets included in the Instructions page.