More actions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
== Challenge == | == Challenge == | ||
In order to not allow respondent click on the Next button in a period of t<br>As a questionnaire creator<br>I want to hide the Next button in some seconds | In order to not allow respondent click on the Next button in a period of t<br>As a questionnaire creator<br>I want to hide the Next button in some seconds | ||
== Solution == | == Solution == | ||
*In questionnaire template editor, choose the question I want to hide the Next button, and then go to the Properties - Edit question properties - Language dependent - Select javascript property | *In questionnaire template editor, choose the question I want to hide the Next button, and then go to the Properties - Edit question properties - Language dependent - Select javascript property | ||
*Create a onInit() function. | *Create a onInit() function. | ||
*In that function, check if the Next button existed. | *In that function, check if the Next button existed. | ||
*If it doesn't exist, do nothing, else disable the Next button, set the time out to number of seconds I want to hide the button, then show the button again. | *If it doesn't exist, do nothing, else disable the Next button, set the time out to number of seconds I want to hide the button, then show the button again. | ||
== Code == | == Code == | ||
<source lang="javascript" line="1">quest.onInit = function()<br>{<br>var secsTimeout = 10; | |||
{ | |||
if ( !document.getElementsByName('next') || document.getElementsByName('next').length == 0 ) <br>{<br>// next button not available<br>return;<br>}<br>else<br>{<br>document.getElementsByName('next')[0].style.display='none';<br>} | |||
var timeout = setTimeout("document.getElementsByName('next')[0].style.display='';", secsTimeout*1000); | |||
}</source> | |||
} |
Revision as of 04:09, 12 February 2009
Challenge
In order to not allow respondent click on the Next button in a period of t
As a questionnaire creator
I want to hide the Next button in some seconds
Solution
- In questionnaire template editor, choose the question I want to hide the Next button, and then go to the Properties - Edit question properties - Language dependent - Select javascript property
- Create a onInit() function.
- In that function, check if the Next button existed.
- If it doesn't exist, do nothing, else disable the Next button, set the time out to number of seconds I want to hide the button, then show the button again.
Code
<source lang="javascript" line="1">quest.onInit = function()
{
var secsTimeout = 10;
if ( !document.getElementsByName('next') || document.getElementsByName('next').length == 0 )
{
// next button not available
return;
}
else
{
document.getElementsByName('next')[0].style.display='none';
}
var timeout = setTimeout("document.getElementsByName('next')[0].style.display=;", secsTimeout*1000);
}</source>