I am facing a challenge with my advanced TabPanel Wizard. It consists of 4 tabs, each serving as its own form to allow for validation within the tab itself. The issue I am encountering is related to the validation behavior of non-rendered tabs.
One problem is that a non-rendered tab incorrectly registers as valid even when it has an empty value and the field is set to allowBlank: false
. Conversely, there are instances where a tab with a value set is marked as invalid.
Another quirk is that I need to call this.getViewModel().notify()
when the tab panel loads to prevent the initial form from being deemed invalid. This could be due to binding delay, which I can manage for now.
While using deferredRender: false
would resolve this issue, I prefer not to use it due to performance concerns in my application where each tab contains substantial content and functionality.
In a Fiddle example, only 3 out of 4 tabs are enabled despite the third tab having data from its model. This leads to incorrect validity checks triggering further methods.
- Tab3 incorrectly thinks it's invalid despite having a value bound to it and
allowBlank: false
set - Tab4 wrongly appears valid while it should be marked as invalid without a value and
allowBlank: false
set
I'm seeking insights or suggestions on how to address these issues. Am I approaching this problem incorrectly?