Copy link to clipboard
Copied
Hi all,
I'm attempting to set up an action that's relatively complex compared to what I normally do, and I have a few questions. Here is a summary of what I'm attempting to do:
I have a slide set up with two text entry boxes. I would like the TEB to give a 'required' message if the user hits the Submit button and there is nothing in the field. Once the TEB is verified as non-empty, the TEB validates the user text based on if the terms 'l3' and 't12' are included in the answer. If they are, the TEB shows a correct message. If not, the TEB shows an incorrect message. There is an attempt limit of 3 attempts before the TEB shows a final message. The user must enter the correct answers or reach the attempt limit on both TEB's to enable to next slide navigation arrow at the bottom of the screen to move to the next slide.
I've looked at several blog posts and forum discussions to try to replicate these actions. I've attached screenshots of the slide in question, my advanced actions, variables, and properties tab. I haven't tried to put in the 'enabling the next slide navigation arrow' yet.
Any help is greatly appreciated! Thanks in advance,
Laura
You will need JavaScript in that case. Sorry, cannot help you with that.
Copy link to clipboard
Copied
Some very important information is missing in your question: do you need to score this and report to a LMS?
Did you see these blog posts?
Copy link to clipboard
Copied
Hi Lilybiri,
Yes - those are two blogs that I referenced heavily. No luck. Here are some screenshots of my project for some visibility on the actions.
Here's the slide. Two TEB and two submit buttons. The navigation arrows are at the bottom of the slide.
Properties >> Style and Proterties >> Action tabs for the first TEB.
First, I would like the TEB to check that the TEB is non-empty. On the Else tab, I have Change State of kid_pos_q4_answer to Normal.
Then, if the TEB is non-empty, it checks that the answer contains the two phrases L3 and T12. Under the Else tab, it has Change State of kid_pos_q4_answer to Incorrect.
Null variable.
I have five states for my answer text - normal, which is located off of the screen, correct, incorrect, the 'required' message for null entries, and a last attempt text for when the user hits the last attempt on the attempt limit.
Copy link to clipboard
Copied
What about the scoring?
Can you please post the full conditional action, by using the Preview button, which is the first button in the top right control panel of the AA dialog box (looks like an arrow).
How did you test?
Copy link to clipboard
Copied
Here is the full action:
I test with Preview and input different answers.
Copy link to clipboard
Copied
That is the problem: a TEB only gets a score when there is an entry that is exactly equal to one of the listed correct answers. That is not the case here. Just creating an advanced action, will never add a score. You cannot use a validated TEB.
You have two TEB's, what is the score needed, anc what is the reaction wanted when only one of the TEB's has fulfills the required criterium.
You talked about two Submit buttons,. Why? Which event will you use to trigger the action? Moreover you'll have to make sure that a score is added. I need an answer to my questions before being able to judge if the approach posted in this post is valid, or if you have to use JS:
Report Custom Questions - part 2 - Captivate blog
Micronavigation is not always acting correctly when you want HTML output, you may need a workaround if that is the case.
The condtional action cannot be functional because you are using two ELSE parts, and the ELSE of the second decision will override the THEN of the first decision. The second criterion will also result in Not correct when one or two TEB's remain empty, thus the state Incorrect will also show and replace the state Incomplete. That is a logical bug. Before I spend more time on this, please answer all my questions.
Copy link to clipboard
Copied
The score needed is 1 pt for the correct answer (the correct answer being any sentences or phrases that contain T12 and L3), or 0 pt for incorrect answers.
When the correct criteria are met for the first TEB, the reaction is the correct message.
When the correct criteria are met for the second TEB, the reaction is the correct message AND the forward navigation arrow is enabled.
Copy link to clipboard
Copied
i don't understand at all. From your last answer it looks like:
Something is wrong in your explanation. Can you try to explain what has to happen if you have only one Submit button for both TEB's? Or if you insist on having two Submit buttons, how you want to impose the sequence?
Copy link to clipboard
Copied
1. When I mention 'first' and 'second' text boxes, I am only referring to their order on the screen. When the student enters the screen, I would like them to be able to enter text into either box and check it, regardless of order. However, they are unable to click on the forward navigation arrow until the correct criteria/attempt limit is hit on both boxes.
2. I should clarify that the correct answer for the first TEB is a statement that includes both "T12" and "L3". A sentence that could be marked as correct for the first TEB might be, "The superior limit of the kidneys is at T12 and the inferior limit of the kidneys is at L3." The answer for the second TEB would be a phrase that includes the words "right" and "liver". For example, "the right kidney is displaced inferiorly by the liver." I haven't created this action yet.
I was thinking that the user would click on each Submit button to check the answer of the corresponding TEB. Once the user has hit both Submit buttons and the answers were correct or they reached the attempt limit on both, then the forward nav arrow is enabled. I hope that clarifies my goal!
Copy link to clipboard
Copied
What about the score? Score is only obtained when both TEB's are correct? Than you could use the approach I explained in the last liink. If that is not the case, but you have a score for each of the TEB's, you'll need to ask a JS expert for a script, cannot be done by advanced actions.
Since you will not be able to use the validation feature for your goal, you could replace the TEB's by Scrolling text interactions.
Copy link to clipboard
Copied
I would want a score for each TEB. Would I be able to create interactions for each TEB that just checks null/non-null and then checks the answer, omitting the portion about enabling forward navigation?
Can you clarify what a scrolling text interaction is?
Copy link to clipboard
Copied
You will need JavaScript in that case. Sorry, cannot help you with that.
Copy link to clipboard
Copied
In the blog psot about Custom Short Answer question I used a Scrolling Text interaction. It is a static widget, wich means you'll not have to bother with the micronavigation as for a TEB to get back in the active part of the timeline. It can have an associated variable that you can use in actions, but you don't have the possibility to turn off case sensitivity.
Copy link to clipboard
Copied
Hi all,
I thought I would post an update as I did get a version of what I was looking for to work without JavaScript. The key fact that I was missing the first time around is that if you want the Advanced Actions to advance to the next Logic Block, you need to leave the Else section blank. There's an article here that goes into detail about the Advanced Actions panel that helped.
http://www.infosemantics.com.au/adobe-captivate-advanced-actions/conditional-actions
I've also put in a screenshot for the actions I used to first check that a TEB is not empty, then checks for appropriate content and enables the next text field if the user got the question right.
Note that from the way I understand it, the 'check true' action I have below does not report back to an LMS. That functionality is controlled by the 'Reporting' section on the TEB, which is turn is controlled by the 'Validate' box. All that my action is doing is checking for certain values in the user statement and popping a response message.
These actions were applied to new buttons that I created and put next to the TEB, not the On Success or On Focus Lost actions for the TEB.
This one does have an Else section at the last action because I don't need the Advanced Action to run through any more Logic Blocks.
Copy link to clipboard
Copied
Not totally true. I often use both Else and Then parts. But you have to be careful not to override previous decisions. I have lot of examples on my blog where I do use the Else part, if the logic allows it. At the same time I have also examples where I only use the Then parts to avoid overriding. There must still be some misunderstanding of my answers.
Copy link to clipboard
Copied
In a Captivate Conditional Action EVERY decision block gets executed in sequence.
The ELSE part of a previous decision block in the sequence does not affect whether or not the next decision block gets executed.
What sometimes does happen (as Lieve also states) is that the order of decision blocks can mean one decision and its actions (e.g. to assign a value to a variable) will get over-ridden by one of the following decision blocks (because the value of the same variable gets changed again).
Look carefully at the order of the decision blocks. You need to think of each decision block as been totally separate to the others in the same Conditional Action. It's the ones toward the end of the chain that might be causing your issue.
Copy link to clipboard
Copied
And yes, thank you for asking. I do need this to be scored and I'll be reporting to Canvas LMS. I selected 'validate answer', but I'm not sure how this relates to the advanced action I set up to check the text for contained phrases.