Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

CalendarExtender wrongly positioned after scrolling

I am adding a CalendarExtender to a page, using the default styles. When I click the calendar button to trigger the calendar popup, the calendar displays normally. However, when I scroll down and click the button again, the calendar's position is not where it should be, as seen below.

alt text

Why is this occuring and how do I fix it?

EDIT: A bit about the implementation of this page.

The CalendarExtender and TextBox are part of a WebPart added to a SharePoint 2007 Page. I am creating the extender like so:

textBox = new TextBox() { ID = "textBox" };
Controls.Add(textBox);

calendar = new CalendarExtender()
    {
        ID = "ceStartDate",
        TargetControlID = textBox.ID,
        PopupPosition = CalendarPosition.Right,
        PopupButtonID = image.ID
    };
Controls.Add(calendar);
like image 432
Kyle Trauberman Avatar asked Jun 05 '09 23:06

Kyle Trauberman


2 Answers

I came across the same problem today.

Wrap your textbox and calendarExtender in a div with position:relative;

That fixed the problem i was facing, i hope it does the trick for you too

like image 53
Dogoku Avatar answered Nov 09 '22 12:11

Dogoku


What is the DOCTYPE of the page? Also, what browser is it? I have seen this issue on pages with invalid/old DOCTYPEs with IE6-7 in Quirks mode.

In quirks mode, javascript values(like scroll position), can be off, resulting in a bad render. You should ensure you have a valid DOCTYPE that forces IE into standards mode like..

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
like image 38
Jab Avatar answered Nov 09 '22 11:11

Jab