Asp.net Opera错误:src="&引用;由asp生成:图像为空

Asp.net Opera错误:src="&引用;由asp生成:图像为空,asp.net,image,opera,src,Asp.net,Image,Opera,Src,我对歌剧有以下问题。 下面是asp.net代码 <asp:Image runat="server" ID="imgExpand"/> <ajaxToolkit:CollapsiblePanelExtender ID="cpe" runat="Server" ImageControlID="imgExpand" ExpandedImage="<%$ Image:collapse.png %>" CollapsedImage="<%$ I

我对歌剧有以下问题。 下面是asp.net代码

<asp:Image runat="server" ID="imgExpand"/>

<ajaxToolkit:CollapsiblePanelExtender ID="cpe" runat="Server"
    ImageControlID="imgExpand"
    ExpandedImage="<%$ Image:collapse.png %>"
    CollapsedImage="<%$ Image:expand.png %>"
    />

在FF3、IE6、IE7、IE8中生成以下内容:

<img style="border-width: 0px;" src="/style/img/collapse.png" id="ctl00_ContentPlaceHolder1_imgExpand" title="Ausblenden..."/>

然而,Opera 10中的以下内容:

<img id="ctl00_ContentPlaceHolder1_ucProductList_rptProducts_ctl02_imgExpand" class="expand-img" src="" style="border-width:0px;"/>

如您所见,src=”“为空,因此不显示任何图像

你知道这个问题的解决办法吗


非常感谢

听起来很奇怪。我没有听说过这个特定的错误,但是你可以用同样的方法来解决它,你可以避免与ASP.NET愚蠢的、坏掉的浏览器嗅探相关的所有问题:。

发现了同样的问题。但注意到官方的例子在Opera下起作用。玩了一段时间后,我发现了一个原因: 需要为控件指定图像(ImageUrl=“~/Img/icon plus.gif”)


然后将其ID置于控制之下(ImageControlID=“ib”):



似乎很奇怪-Opera设置了什么用户代理发送到服务器?e、 ASP是否对它正在处理的浏览器感到困惑,从而抛出垃圾代码?(这个页面在Opera 9.6上运行得好吗?我不能说,如果它在Opera 9.6中运行得好的话……但是,我相信这种方式已经有相当一段时间了。这是服务器发送的标记(您在“查看源代码”中看到的),还是您在Opera Dragonfly中看到的标记?URL将有助于我们查看它。下面是一个示例:
<asp:ImageButton ID="ib" runat="server" ImageUrl="~/Img/icon-plus.gif" ImageAlign="AbsMiddle" />
<ajaxToolkit:CollapsiblePanelExtender ID="cpe" runat="Server" TargetControlID="pD" ExpandControlID="pH" CollapseControlID="pH" 
        Collapsed="True" TextLabelID="lCategoryName" ImageControlID="ib" ExpandedText="(Hide Details...)" CollapsedText="(Show Details...)"
        SuppressPostBack="true" ExpandedImage="~/Img/icon-minus.gif" CollapsedImage="~/Img/icon-plus.gif" />