代码之家  ›  专栏  ›  技术社区  ›  Kyle Trauberman pestades

CalendarExtender定位问题

  •  10
  • Kyle Trauberman pestades  · 技术社区  · 17 年前

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

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

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

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

    CalendarExtender和文本框是添加到SharePoint2007页的Web部件的一部分。我正在创建扩展器,如下所示:

    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);
    
    3 回复  |  直到 11 年前
        1
  •  6
  •   Jab    17 年前

    什么是 DOCTYPE 页面的?另外,它是什么浏览器?我在IE6-7处于怪癖模式的无效/旧doctypes页面上看到了这个问题。

    在Quirks模式下,javascript值(如滚动位置)可以关闭,从而导致渲染错误。您应该确保您有一个有效的doctype,它强制IE进入标准模式,例如..

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
        2
  •  14
  •   Dogoku    11 年前

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

    在DIV中用 position:relative;

    这解决了我面临的问题,我希望它也能帮到你。

        3
  •  0
  •   Nick Niebling    11 年前

    因为这是我发现的一个老帖子,我试图为自己解决这个问题(之前的回答不成功),我认为我对同一个问题的解决方案可能与其他人有关。

    • 我们在哪里使用 过时的版本 3.0.xxx
    • 我们不得不 升级到最新版本 4.1.xxx

    上面的版本是AjaxControlToolkit DLL版本,而不是您在nuget上看到的版本,现在nuget包(“Ajax控制工具包”)将类似于7.xxx。

    仅供参考-我的研究: 我一直在使用最新AjaxControlToolkit版本的样本来验证我的bug是否在升级后得到了解决(因为我知道如何重现我的位置问题)。以下两个站点中至少有一个可以工作:

    推荐文章