Disabling a text entry field

Aug 11, 2016

I have a page with text entry fields. I want to disable / enable fields depending on the value of a variable. Is it possible to enable/disable text entry fields?

25 Replies
Wendy Farmer

Hi Andrew

you could place a transparent (a shape with a fill set to 100% transparency NOT a shape set to NO FILL) shape over the field that is initially in hidden state and then triggered to change state to normal when variable = x value. Once it is normal the user should not be able to click into the text entry field.

Wendy Farmer

Give some more context Andrew

Do you only want the field disabled when a certain value is entered? or when any value is entered? is it a text entry or number entry? does the user click a button to 'lose focus'.

Perhaps if you upload the slide and give a bit more information on what you want someone might have a different response for you.

Andrew Dunn

Hi Wendy

I have a page that functions as a data entry form. Depending on a previous choice on an earlier page, I want to show/hide data entry fields from the user. So ideally I'd have a trigger when the timeline starts that would enable/disable a field (numeric, as it happens) depending on the value of the variable. Right now, I show/hide the transparent text box depending on the variable value to achieve the same result.

Ashley Terwilliger-Pollard

Hi Andrew, 

There isn't a trigger to enable/disable - but you could use the transparent shape over the top of the text entry so that the user couldn't type inside it or click on it. That could be trigger to be in a "normal" or "hidden" state based on the value of a variable when the timeline starts. 

If you're still having a difficulty time setting this up please share a copy of your .story file so that we can assist. 

Aurore Austruy

Hi Ren,

I made some tests, and it appears that the problem is, when the shape is in a layer.

I've contacted the support, using my account. they are working on the bug.

I attached the file so you can see it.

At the left: the "support team" test, at the right: my test whith the shape in a layer.

When I publish I have the problem. I can click on the text entry field.

Vincent Scoma

Hi Aurore,

Thank you for sharing your file! Great call on opening a Support Case as well. I see that Renato is assisting with the Text Entry issue. I am adding your comments to our active report, so we will be sure to provide an update as soon as we have more details to share! 

Please let us know if you have any questions! 

Leslie McKerchie

Hello again, Aurore :)

Great news!  We just released another update for Articulate 360, and included a few important fixes that you'll see in the release notes here

The item you'll be interested in is:

Fixed: When the base layer had a data-entry field, interactive objects on other layers weren't clickable and learners could still edit the field on the base layer.

Just launch the Articulate 360 desktop app on your computer and click the Update button for Storyline 360. Details here.

Please let us know if you have any questions, either here or by reaching out to our Support Engineers directly.

Mischka Zeldenrust

Hi, I'm having a similar issue with covering text entry fields with a shape. I'm trying to disable text entries in a scrolling panel after the learning types a specific value. Everything works when the objects are outside of a scrolling panel, but it doesn't work when the objects are inside the scrolling panel.

I created a very simple example to show the issue. The example has two text entries in a scrolling panel, and will "hide" the text entry behind a rectangle after entering something in one of the text entries. I gave the rectangle a color to clearly show what is happening. The learner shouldn't be able to change the value in the text entry when the rectangle covers the text entry, but unfortunately, they still can.

You can access the example here: https://articulateusercontent.com/review/items/9w6dGN20qrRu6ucs/story.html

I also attached the .story file to this post.

While covering the text entry with a shape should work, I do think it would be nice to be able to disable a text entry in a different way. Hiding a text entry behind a shape is a workaround, but far from ideal, because it will still be possible to use the Tab key to select the object. I can remove the text entry from the tab order, but that would make it impossible to make a form in a software simulation that actually functions like a form (using tab to jump between text entries).

 

Lauren Connelly

Hi Mischka!

I'm happy to help! I took a look at your file and made a few changes to create what you're looking for. 

Here's what I've done:

  • Added a layer and copied the Base Layer content to the Layer.
  • Removed the Text Entry Field from the Layer and replaced it with a shape with the text %TextEntry%. This is to show the text without a user being able to edit the entry.
  • Added a trigger to Show Layer when the Text Entry field loses focus.

I'll attach the updated project to this discussion.

Mischka Zeldenrust

Hi Lauren,

Thank you for sharing the updated project, I appreciate it!

If I understand your approach correctly, I can use a layer with the same scrolling panel (but rectangles instead of text entries) which covers the base layer after adding a value to the text entry.

I understand how this would work outside of a scrolling panel. But the moment you use scroll and enter a value, the layer appears but reverts the scrolling panel back to its original position (back to top). Which isn't the end of the world, but is unexpected behavior in a software simulation.

And how would this approach work in a form with multiple text entries? Would it require a layer for every possible scenario? To give an example: If I have two text entries. The base layer is for the original state where no text entries are completed. Layer 1 for when the first entry was completed but not the second. Layer 2 for when the second is completed but not the first. And layer 3 for when both of the entries are completed.

As you might have noticed in my example, I'm creating a software simulation where the user is asked to complete multiple text entries in a form, and in any order (the "any order" aspect is very important in this exercise). And most of the forms have a lot of text entries. So to cover every scenario in layers will become harder with every extra text entry in the form.

It's possible that I'm overlooking something in your approach. Excuse me if that's the case.

Leslie McKerchie

Hi Mischka,

Thank you for the additional information along with your questions. You're correct, the layers approach would require many steps for each text entry.

I'm opening a support case on your behalf specific to the shape not covering your text entry when in a scrolling panel so that one of our support engineers can take a closer look at this. You should be hearing from someone soon.

In the meantime, I look forward to seeing other design ideas from the community.

Joseph Baiocco

I've been seeing questions over 6 years old asking about how to hide a text entry box. In what release will that functionality be included?

Just asking because I'm creating a cryptogram puzzle and covering and uncovering text entry boxes is tedious work that could be solved with a hidden/normal state.

Griffin Davis

I would like to second a request to disable text entry fields. I'm having the same issue as Mischka where despite having a fully opaque object over text entry fields, when they're in a scroll panel (or a group) you can still click them even though they're hidden. That seems like a bug to me, but it would also be nice to disable them entirely through a state.

Rick Barrett

I'm having the same issue. Not just a fully opaque object, but even an image covering a text entry field won't work. The user can still click through whatever object is present into the text entry field. This is making it impossible for us to create drop-down menus in a scroll panel since building a menu system as layers doesn't work in a scroll panel. This bug and the inability to allow data entry fields to go into an hidden state is effectively ruining our project.