Axure won't go past 2 cases

Yet another weird thing…
I’ve got a button which has six cases. The cases each look at text in a label. If the text is a specific string I have a case for something to happen. The first 2 cases are evaluated OK but the next 4 are ignored. I’ve looked real careful at the criteria. They are correct. Anybody ever see this?

Well the most simple answer is that they are, in fact, not correct. Or what you think is correct doesn’t work the way you think it does. Or much less likely, there’s some strange bug.

Many many times I’ve had someone come to me at work and ask my where their Axure file wasn’t working even though everything was correct, and when I look at it (surprise) it wasn’t correct. I don’t know that’s the case here, just my experience :slight_smile:

But if you’re the only one who can see the setup then no one can tell you. Are you able to share your condition and logic?

If I were a betting man, my guess would be your IF/ELSE IF settings and conditions aren’t doing what you think they’re doing.

Sigh…
Yeah…
I would have written the exact same thing.
I went to where I have the strings inserted into the location that the Cases all look to and copy/pasted the text from their origin, into the Cases to ensure they were verbatim. No work.
I added a Test case at the end with a single text character. No work. It’s as if the case evals end at the second case.
I went back into each line of code and reconnected each object to ensure links were not broken… I tried everything.
Next I will sandbox what I am trying to do. If I can duplicate the problem I’ll post a file.

Have you double (triple, quadruple) checked the control flow logic?

For example given:

Case 1 If X
Case 2 If true
Case 3 Else if Y
Case 4 Else if Z

Case 3 and 4 will never execute. May not be as simple as this, maybe there is a condition on Case 2 but for some other reason, it always evaluates to true.

Each Case is an Else If after the first case which is the If.

If the text equals “One” then Put “1” into the label
Else if the text equals “Two” Then put “2” into the label
Else if the text equals “Three” Then put “3” into the label

I just sand boxed it and it worked fine. I.e., I redid the exact same functionality in a new file without all the rest of the stuff in the product mockup. No issue there at all.

My gut tells me there are things under the hood that break in Axure.

I’d check there’s no empty cases in your interactions. I bumped into an issue yesterday where an empty case with no logic on it just killed the whole thing, with nothing obvious showing in the trace to demonstrate what was happening.

I’d look for errant spaces or even weird things like zero-width-spaces (if you, say, copy pasted from somewhere). Even if you copy pasted the text for the case condition, maybe you could have missed a space if you weren’t expecting it to be there.

Here’s an extreme example:

"Three​" != "Three"

That had to be the problem, although I could not find any hidden text at all. I deleted the cases then did them again and I got it to work.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.