How to require text entry

I have a slide with three text entry objects on it. I want to user to type something (anything) in all three boxes and then press submit. Which will take them to another slide. On that next slide I want what they typed in each box to be in three new text entry objects.

I thought I could add a trigger condition for the submit button that the variables for each of the three entries are not equal to blank. But that didn't work. Regardless of if they have typed something in there the submit takes them to the next slide.

First question: How do I require that submit not work until they have entered something in all three?

Next I figured I could display what they had typed on the previous slide by referencing the variables created on the other slide. At first I tried putting %textEntry0% directly in the default value for the variables on the next slide. But all that did was put "%textEntry0% into the new text entry box. I also tried putting it in the box, just like putting it in a text field. But that didn't work either.

Also I don't want to change the second slide to text boxes. The user might type a lot (not likely, but possible) and then the text would get all messed up. 

Second question: How do I get their entries to show up in a text entry box on another slide?

13 Replies
Matthew Graham

I just did this on my current project, so maybe I can help.

1) Make sure you are using or not equal to blank instead of and with the false trigger.  This does work, so look over the logic just to make sure.  These tend to not work as planned because of one variable that is acting differently than you intended.  Your two triggers:

  • Submit trigger - Jumps to next page with variables - create variables that say if textEntry0!= AND textEntry1!= AND textEntry2!=
  • Don't Submit trigger- show layer saying you must complete all fields - create variables that say textEntry0== OR textEntry1== OR textEntry2==

You could also try making that slide into a freeform under the insert tab, and that may automate some of it for you.

2) Create a new variable on the first page, like "textEntry0".  Name it, set it to text, and do not put a value.  Then simply type "%textEntry0%" wherever on the next slide to display what they typed.  This could be in a text box, on a shape--wherever.

If this isn't working and you're cool with it, post your project file.

Murdock DM

Hi,

I am also looking for a solution for such a scenario. I am testing a few e-learning tools for my company (e.g. Adobe and yours). In adobe I can add a text entry object over a screenshot. Then I simply check a "validate" checkbox. After that I click on a plus sign, type in the extact value I want students to type in (even has a "case sensitive" checkbox) and click done.

How could I achieve this with storyline?

Adam Mac

@ Murdock, yes this can be achieved using SL using Trigges and Variables. For a text entry, you would have the options of equal to and not equal to, each with an option for case sensitive or not.

As Matthew posted above, you can additionally include layers to help instruct users if they have not entered the correct variable.

Alyssa Gomez

Hi Elizabeth! Tell me more about what you're looking to do. Do you want to require a learner to type something in a text entry field before moving on?

If so, you'll want to convert your slide to a Freeform Text Entry slide – it's easy! Simply clicking the Insert tab, then click Convert to Freeform. From there, choose the Text Entry option. 

If that's not exactly what you had in mind, let me know and we'll keep brainstorming!

James Picton

Hi Alyssa,

I think that Elizabeth is suggesting that she simply wants to add a text box to captures some user input, before allowing them to move on. I am doing a similar thing in my course, where I ask students to explain 'how play is different to games' (in their own words). It's a reflective activity, so no really correct/incorrect answers.

Checking that text has been entered into a text field can be achieved using variables and triggers as Matthew and Adam Mac proposed, but I'm going to elaborate on Thomas' (and your) answer a little and pull in some of Matthew's work.

Validate a textfield (without requiring an 'Acceptable' answer)

  1. Add text field and Submit button to your slide
  2. Convert slide to Free-form
  3. pop to 'Form View'
  4. Enable feedback if you want to give it (most likely you will)
  5. Require 'User Must answer'
  6. Results Slide (up to you) or you can do this on a layer etc
  7. Score 'None' (this removes the 'Enter Acceptable Answers' fields)
  8. Test!

Displaying the user's textfield input back to them

If you want to display the user's input back to them, do as Matthew suggested:

  1. Define a variable to store the user's textfield input  e.g. screenID_textField%
  2. Ensure the variable is set to 'text' and don't set a default value
  3. Type "screenID_textField%" in the layer, or area of the screen that you wish to display it e.g.

Although there is no right or wrong answer, it is interesting that you think "screenID_textField%" about this topic.

Great for reflective questions with no right or wrong answers, and want to provide a sense of user interaction/dialogue.

Cheers!
Jim

James Picton

Hi Elizabeth,

You sound s though you simply want to validate that the user has put some text into the textfield? Thomas' suggestion is a good one, and converting your standard slide to free-form won't cause any problems. Take a look at his settings in the screencap, especially the 'Score' which he has set to 'None'. By doing this it removes all of the 'Enter Acceptable Answers' boxes and simply leaves you with the option to evaluate a field instead.

I provided a bit of a stepthrough at the bottom of the page.

Hope this helps?

Cheers!
Jim