Button enable condition does not fire in certain scenario

  • 4
  • Problem
  • Updated 1 year ago
  • Acknowledged
  • (Edited)
Hi there!

I’m using the Wizard component (which is AMAZING) in my app. I am using Enable conditions on a button in a certain spot. Basically the idea is, the user cannot move on to the next step unless the conditions are met. Namely, my conditions are that

1. a field on one model is non-empty, and ...
2. a different model has data rows.

Everything works great under normal circumstances. The issue I have is that, I also have a “Start over” button that uses the Action framework to empty all data from both models in question and then navigate back to step 1.

If I use that, when I come back to the step the second time around, this time the enable condition does not fire properly. That is, I can verify on the console that the conditions ought to be satisfied, but my button does not enable.

Is there something I’m missing? Perhaps a way to force a re-evaluation of the enable condition programmatically?

Any help is appreciated!

Thanks,
Hamza T.
Photo of Hamza Tayeb

Hamza Tayeb

  • 278 Points 250 badge 2x thumb

Posted 3 years ago

  • 4
Photo of Matt Brown

Matt Brown, Employee

  • 798 Points 500 badge 2x thumb
Hamza, I may have run into something similar - I have a field that is set to only enable if another field's value is blank, but the enable condition is simply not firing. Going to look deeper; will let you know if I find anything.
Photo of Hamza Tayeb

Hamza Tayeb

  • 278 Points 250 badge 2x thumb
Thanks! Keep me posted!
Photo of Matt Sones

Matt Sones, Champion

  • 31,478 Points 20k badge 2x thumb
I've experienced the same thing in a wizard, with an enable condition that checks a field's value. It works the first time, but when I go back to the step again, the button is not enabled (although it should be by the console data).
Photo of Karen Waldschmitt

Karen Waldschmitt, Official Rep

  • 8,240 Points 5k badge 2x thumb
Hi Hamza and Matt~

Thanks for letting us know about this! I was also able to replicate this problem and have let the team know.

Karen
Photo of JG GBC

JG GBC

  • 694 Points 500 badge 2x thumb
Try to change your conditions from ' = true' to '!= false'. Sometimes, when I have troubles with rendering/enable conditions, that works fine.
Photo of Kaleb

Kaleb

  • 84 Points 75 badge 2x thumb
I have encountered a very similar issue. I was able to work around it by adding a "Run a Skuid JavaScript Snippet" action instead of the "Navigate to Step" action.

The code I used for the snippet:
skuid.component.getById('<em>YourWizardID</em>').render();

Initially, I used the button id, instead of the wizard id, with this code to fix the "Enable Conditions" not validating, but it did not work for the issues with "Render Conditions". Re-rendering the whole wizard has fixed both issues for me (and automatically navigates to the first step).
Photo of Dinesh Ramanadham

Dinesh Ramanadham

  • 372 Points 250 badge 2x thumb
Kaleb - if I use wrapper id instead of wizard ID in the snippet 
skuid.component.getById('<em>YourWizardID</em>').render();

Will that work?

Thanks,
Dinesh