Highlighted

Show/Hide Text Entry Box Based On State of Another Object

Explorer ,
Jun 11, 2020

Copy link to clipboard

Copied

Hello Everyone,

I have a simple form with 3 statements that a student must agree to in order to begin a quiz.

 

Each statement has an empty square smartshape (CB1, CB2, CB3) preceeding it, that changes its state when the student click on it; the state changes from empty square to a square with a check mark.

 

Upon the student agreeing to the last statement (CB3), I need to have a text entry box appear (show) wich student will use to enter thier name and after they click submit a "start quiz" button appear.

 

I can't figure out how to triger the action of "show" on the text entry box, based on the state of CB3, and also "show" the "start quiz" button based on the state of the text entry box.  

 

I appreciate any help I can get.

 

Thank you all so much!

Serko

 

Most Valuable Participant
Correct answer by Lilybiri | Most Valuable Participant

Not totally sure to understand. You say that they need to click the shape buttons in 'sequence'? That means hat you want to have only the first one active at the start and enable the next one after the first has been clicked? 

I would start On Enter with an action that will:

  • Disable CB2 and CB3 
  • Hide the TEB
  • Hide the Quiz button

For the first CB1 create an action which:

  • Disables CB1
  • Changes its state (although it if is a Visted InBuilt state that will happen automatically)
  • Enables CB2

Something similar for the action on  CB2

For the action on CB3, third command needs to be changed to Show TEB.

For the TEB, whch is not validated, use the Success action to show the Quiz button.

 

I may have misunderstood, but with this workflow you do not need any variable at all.

 

Topics

Advanced actions

Views

241

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more

Show/Hide Text Entry Box Based On State of Another Object

Explorer ,
Jun 11, 2020

Copy link to clipboard

Copied

Hello Everyone,

I have a simple form with 3 statements that a student must agree to in order to begin a quiz.

 

Each statement has an empty square smartshape (CB1, CB2, CB3) preceeding it, that changes its state when the student click on it; the state changes from empty square to a square with a check mark.

 

Upon the student agreeing to the last statement (CB3), I need to have a text entry box appear (show) wich student will use to enter thier name and after they click submit a "start quiz" button appear.

 

I can't figure out how to triger the action of "show" on the text entry box, based on the state of CB3, and also "show" the "start quiz" button based on the state of the text entry box.  

 

I appreciate any help I can get.

 

Thank you all so much!

Serko

 

Most Valuable Participant
Correct answer by Lilybiri | Most Valuable Participant

Not totally sure to understand. You say that they need to click the shape buttons in 'sequence'? That means hat you want to have only the first one active at the start and enable the next one after the first has been clicked? 

I would start On Enter with an action that will:

  • Disable CB2 and CB3 
  • Hide the TEB
  • Hide the Quiz button

For the first CB1 create an action which:

  • Disables CB1
  • Changes its state (although it if is a Visted InBuilt state that will happen automatically)
  • Enables CB2

Something similar for the action on  CB2

For the action on CB3, third command needs to be changed to Show TEB.

For the TEB, whch is not validated, use the Success action to show the Quiz button.

 

I may have misunderstood, but with this workflow you do not need any variable at all.

 

Topics

Advanced actions

Views

242

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Advocate ,
Jun 11, 2020

Copy link to clipboard

Copied

General idea...

 

I would use variables here to track the state of each of the three check boxes as either 1 (checked) or 0 (unchecked)

Then  -  if  variable =3 show TEB

 

You could also have that variable to show a custom button along with that TEB which will have an action to take you to your quiz.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Most Valuable Participant ,
Jun 11, 2020

Copy link to clipboard

Copied

Not totally sure to understand. You say that they need to click the shape buttons in 'sequence'? That means hat you want to have only the first one active at the start and enable the next one after the first has been clicked? 

I would start On Enter with an action that will:

  • Disable CB2 and CB3 
  • Hide the TEB
  • Hide the Quiz button

For the first CB1 create an action which:

  • Disables CB1
  • Changes its state (although it if is a Visted InBuilt state that will happen automatically)
  • Enables CB2

Something similar for the action on  CB2

For the action on CB3, third command needs to be changed to Show TEB.

For the TEB, whch is not validated, use the Success action to show the Quiz button.

 

I may have misunderstood, but with this workflow you do not need any variable at all.

 

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Advocate ,
Jun 11, 2020

Copy link to clipboard

Copied

To be more clear...

Each checkbox has its own variable. You would need to create such that it toggles from 0 to 1 at the same time it toggles state from unchecked to checked and back again.

You could run an if statement to say that if the sum of your three variables is 3 (meaning all three checked) to show the TEB or you could have a fourth variable to track the sum and then simply run the if statement to be   if varTotal = 3 ...

 

Hopefully that makes sense.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Most Valuable Participant ,
Jun 11, 2020

Copy link to clipboard

Copied

Is 'must agree in order' not the same as having to answer in sequence? Your variables workflow is only necessary when the user can choose the sequence and/or can change his mind. Maybe the OP can answer that question.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Advocate ,
Jun 11, 2020

Copy link to clipboard

Copied

A general reading of the sentence indicates to me that the learner must agree to the three statements as a prerequisite to taking the quiz. Think of it as an EULA where the installer must agree "in order to" use the software.

 

That said - you do have a valid workflow as well - if each statement, when selected, reveals the next and locks itself, the variables are not needed.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Explorer ,
Jun 11, 2020

Copy link to clipboard

Copied

This is why I LOVE this community! Thank you, both for the input. 

BOTH approaches seem viable to me; I had attempted something like Stagprime's, but got lost in the IF/Than parts last night. 

 

I hadn't thought about disabling the other checkboxes, as sequential acceptance of the statements wasn't a requirement, but I like the idea and it seems a bit easier to grasp in my head. I'm really struggling with (aka learning) variables, if/then, actions ect. 

 

To address  Lilybir's question: The sequence doens't matter. I happened to have targeted CB3 as the "trigger" simply because it appears last in the list of statements when read top to bottom.

 

In the end, the student must agree (check) all 3 statements (in any order) before the text entry box and "start quiz" button can appear.

 

 

 

 

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Lilybiri LATEST
Most Valuable Participant ,
Jun 11, 2020

Copy link to clipboard

Copied

Even if  the sequence doesn't matter, you could do with one variable, a counter. Set its start value to 0? When clicking any of the shape buttons:

  • Increment the counter
  • Disable itself

That will be the first decision, which is not conditional.

Create a second decision, which needs only the first IF part:

  • IF counter is equal to 1
  • Show TEB

For the TEB you do the same as I mentioned above.


Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...