Details
Description
Popup calendar does not render correctly on IE7 but renders OK of FF. In IE7 the popup takes the full width of the browser screen.
Following tag used to generate the popup
<t:inputDate id="#
{id}" value="#{value}" renderAsPopup="#{true}" popupButtonImageUrl="images/icon_date.gif"popupDateFormat="dd/MM/yyyy" renderPopupButtonAsImage="true"
popupCalendar="#{true}" converterMessage="#{id}
is in wrong format"/>
Issue appears to be a "feature" of IE7 where the setAttribute method in javascript does not work correctly. In the javascript used to generate the popup the width is set in the javascript org_apache_myfaces_PopupCalendar.prototype.init as follows
mainTable.setAttribute("cssText", "width:" + ((this.initData.showWeekNumber == 1)?250:220) + "px;");
This does not appear to set the width correctly. The recommended workaround (which works for both IE7 and FF) is to set the cssText directly as follows:
mainTable.style.cssText = "width:" + ((this.initData.showWeekNumber == 1)?250:220) + "px;";
I have tested this on both IE7 and FF and it seems to work OK.
There are a number of other places in the javascript where the setAttribute is used to set the width and other style attributes - I assume these have the same problem - I have changed these and the popup appears to work OK
Attachments
Issue Links
- relates to
-
TOMAHAWK-1518 Low response time with t:inputCalendar
- Resolved