diff --git a/api/js/etemplate/Et2InputWidget/Et2InputWidget.ts b/api/js/etemplate/Et2InputWidget/Et2InputWidget.ts index 87b3855904..8db96c2e7f 100644 --- a/api/js/etemplate/Et2InputWidget/Et2InputWidget.ts +++ b/api/js/etemplate/Et2InputWidget/Et2InputWidget.ts @@ -444,11 +444,16 @@ const Et2InputWidgetMixin = >(superclass : T) { feedback.slot = "feedback"; } - else + else if(this.shadowRoot.querySelector("#help-text")) { // Not always visible? (this.shadowRoot.querySelector("#help-text")).style.display = "initial"; } + else + { + // No place to show the validation error. That's a widget problem, but we'll show it as message + this.egw().message(feedback.textContent, "error"); + } } }); diff --git a/api/js/etemplate/etemplate2.ts b/api/js/etemplate/etemplate2.ts index 5389268286..c32dcc4dc8 100644 --- a/api/js/etemplate/etemplate2.ts +++ b/api/js/etemplate/etemplate2.ts @@ -1100,9 +1100,9 @@ export class etemplate2 (tmpWidget).activateTab(invalid_widgets[0]); } // scroll the widget into view - if(typeof widget.scrollIntoView === 'function') + if(typeof tmpWidget.scrollIntoView === 'function') { - widget.scrollIntoView(); + tmpWidget.scrollIntoView(); } } else