Hi community,
After updating the OutSystems UI (OS11) dependencies, I'm getting the following console error that breaks the scripts when loading any screen:
Error: The element does not exist, when trying to check the attribute 'role'.
at AttributeManipulation.Has (...)
at SetA11Y._setA11Y (...)
at Controller.layoutReady$Action
at Controller._onReady$Action (SAP2Entrega_UI.Layouts.LayoutTopMenu...)
Hello Carlos Bahamonde Vera ,
This error usually happens after updating OutSystems UI dependencies when some screens/layouts are still referencing older accessibility logic (especially around menu components like LayoutTopMenu). The framework tries to check the role attribute on an element that is no longer present in the DOM after the update, which breaks the script during screen load. It’s typically a dependency version mismatch or incomplete republish issue, not a functional coding mistake.
Try the following steps:
Best practice: after upgrading platform or UI dependencies, always republish the base layout + theme + dependent modules together, because accessibility updates (like role attribute handling) often affect shared layout scripts.
This usually resolves the “element does not exist while checking attribute role” error without additional changes. ✅Thanks and Regards,Akshay Deshpande
Thanks a lot for your help!
I finally found the root cause. It turned out to be a CSS style in a container inside the LayoutTopMenu that broke after updating OutSystems UI. Recreating a fresh LayoutTopMenu was a great idea; it allowed me to figure out what was wrong as I was reapplying my styles.