CalendarExtender定位问题

Kyl*_*man 10 asp.net asp.net-ajax calendarextender

我正在使用默认样式将CalendarExtender添加到页面.当我单击日历按钮以触发日历弹出时,日历将正常显示.但是,当我向下滚动并再次单击该按钮时,日历的位置不在应有的位置,如下所示.

alt text http://ktrauberman.wordpress.com/files/2009/06/calendarproblem.gif

为什么会发生这种情况,我该如何解决?

编辑:关于这个页面的实现.

CalendarExtender和TextBox是添加到SharePoint 2007页面的WebPart的一部分.我正在创建这样的扩展器:

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);
Run Code Online (Sandbox Code Playgroud)

Dog*_*oku 14

我今天遇到了同样的问题.

将文本框和calendarExtender包装在div中 position:relative;

这解决了我面临的问题,我希望它也可以解决你的问题

  • +1:这对我有用.我有正确的DOCTYPE,我仍然想知道可能是什么问题.希望其他人能够探索你的答案是被接受的对他们不起作用.对我来说,这个解决方案适用于多种浏览器:Chrome,Mozilla,Opera,IE(8和9). (4认同)

Jab*_*Jab 6

页面的DOCTYPE是什么?还有什么浏览器?我在Quirks模式下使用IE6-7的无效/旧DOCTYPE页面上看到过此问题.

在怪癖模式下,javascript值(如滚动位置)可能会关闭,从而导致渲染效果不佳.您应确保拥有一个有效的DOCTYPE,强制IE进入标准模式,如...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Run Code Online (Sandbox Code Playgroud)