Wednesday, November 26, 2008

Fix Calendar Extender on IE 6

add this style
.ajax__calendar_container { z-index : 1004 ; }

add this javascript
function dateEditor_OnShown(dateControl, emptyEventArgs)
{
var shimWidth = dateControl._width;
var shimHeight = dateControl._height;

// Open current popup
// Create the popup element
var dateEditorShim;
dateEditorShim = document.getElementById("dateEditorShim");
dateEditorShim.style.width = dateControl._popupDiv.offsetWidth;
dateEditorShim.style.height = dateControl._popupDiv.offsetHeight;
dateEditorShim.style.top = dateControl._popupDiv.style.top;
dateEditorShim.style.left = dateControl._popupDiv.style.left;
dateControl._popupDiv.style.zIndex = 999;
dateEditorShim.style.zIndex = 998;
dateEditorShim.style.display = "block";

}

// Function: dateEditor_OnShown
// Summary: Handles the OnShown event of the dateEditor control.
// Inputs: dateControl -> The date control object
// emptyEventArgs -> Empty event arguments raised by the date control
// Remarks: Make sure to insert a shim of an empty iframe underneath the calendar popup container
function dateEditor_OnHiding(dateControl, emptyEventArgs)
{
var shimWidth = 0;
var shimHeight = 0;

// Open current popup
// Create the popup element
var dateEditorShim;
dateEditorShim = document.getElementById("dateEditorShim");
dateEditorShim.style.width = 0;
dateEditorShim.style.height = 0;
dateEditorShim.style.top = 0;
dateEditorShim.style.left = 0;
dateEditorShim.style.display = "none";
}


//add this in code
calDOB.OnClientShown = "dateEditor_OnShown";
calDOB.OnClientHiding = "dateEditor_OnHiding";

No comments: