在ie8问题中asp.net ajax可折叠面板

时间:2009-06-01 07:06:34

标签: asp.net internet-explorer-8 collapsiblepanelextender

任何人都可以在ie8浏览器中尝试这一段简单的代码并尝试刷新页面,

<8>在ie8中,你会在刷新时遇到关于getelementbyid的错误。

当我运行它时,它抱怨无法找到id为'ctl00_main_dd'的控件

<cc1:CollapsiblePanelExtender ID="CollapsiblePanelExtender2" runat="server"     
     ImageControlID="Image2" CollapsedImage="~/App_Themes/IMStandard/icons/uparrow.png"
    ExpandedImage="~/App_Themes/IMStandard/icons/downarrow.png"
     CollapseControlID="dd" ExpandControlID="dd"
     TargetControlID="pnlQuickKeywordSearch"
     SuppressPostBack="true">
</cc1:CollapsiblePanelExtender>
 <asp:Panel ID="dd" runat="server">
    <h3 class="loginHeader">
        <asp:Image ID="Image2" runat="server" />
        &nbsp;&nbsp;Quick Keyword search&nbsp;<asp:Image ID="HelpIconImage" runat="server"
            Width="16px" Height="16px" ImageUrl="~/App_Themes/IMStandard/icons/help.png" /></h3>
</asp:Panel>
 <asp:Panel ID="pnlQuickKeywordSearch" Style="float: left; border: double 3px #C9DF86;"
    runat="server" >
    <div style="clear: both; padding: 5px;">
    </div></asp:Panel>

有人知道为什么会这样吗?它是ie8中的一个错误还是我错过了什么?

顺便说一下,我正在使用高级页面,但我认为这与它无关。

由于

2 个答案:

答案 0 :(得分:0)

此示例适用于在Windows 7上运行的IE8。 id'ctl00_main_dd'通常是生成的客户端ID(VS2010将使我们能够指定客户端ID)。

你可以使用div而不是asp:面板进行扩展/折叠控制吗?

<div ID="dd">
    <h3 class="loginHeader">
        <asp:Image ID="Image2" runat="server" />
          Quick Keyword search <asp:Image ID="HelpIconImage" runat="server"
            Width="16px" Height="16px" ImageUrl="~/App_Themes/IMStandard/icons/help.png" /></h3>
</div>

然后,可折叠面板扩展器应该能够找到静态“dd”客户端ID。

已添加02.06: 没有好的猜测为什么它只在IE8中发生

我会检查=&gt;

1)在主页

中更正doctype
DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”

2)勾选IE8中的兼容性视图按钮(如果存在)

3)确保所有VS,Framework和Toolkit都是最新版本(SP1)

答案 1 :(得分:0)

我们只是有一个奇怪的场景,在折叠面板中有一个标签,样式=“float:right;”,删除div标签修复了问题。希望这有助于其他人。