У меня следующая проблема с Оперой. Следующий код 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="" пуст, поэтому изображение не отображается.

Вы знаете какое-нибудь решение этой проблемы?

Большое спасибо

2
andrej 18 Сен 2009 в 13:23
Кажется очень странным - какой пользовательский агент Opera настроен для отправки на сервер? например не путается ли ASP в том, с каким браузером он имеет дело, и, таким образом, выплевывает мусорный код? (эта страница нормально работала в Opera 9.6?
 – 
scunliffe
18 Сен 2009 в 14:16
Я не могу точно сказать, работало ли это в Opera 9.6... Тем не менее, я думаю, что так было уже довольно давно.
 – 
andrej
19 Сен 2009 в 23:06
Является ли это разметкой, которую отправляет сервер (то, что вы видите в «Просмотр исходного кода»), или это то, что вы видите, например. Опера Стрекоза? URL-адрес был бы полезен, чтобы помочь нам изучить его.
 – 
hallvors
25 Янв 2010 в 18:52
Вот пример: speak-friend.com/ueber-uns.aspx
 – 
Robert
22 Фев 2010 в 16:02

2 ответа

Звучит довольно странно. Я не слышал об этой конкретной ошибке, но вы, вероятно, могли бы обойти ее так же, как вы можете избежать всех проблем, связанных с идиотским, неработающим браузером ASP.NET: отключить.

2
Community 23 Май 2017 в 15:19

Обнаружил такую ​​же проблему. Но заметил, что официальный пример работает под Оперой. Поигравшись нашел причину: Необходимо указать изображение для управления (ImageUrl="~/Img/icon-plus.gif")

<asp:ImageButton ID="ib" runat="server" ImageUrl="~/Img/icon-plus.gif" ImageAlign="AbsMiddle" />

И после этого поместите его идентификатор в управление (ImageControlID="ib"):

<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" />
1
Fascinator 23 Авг 2011 в 21:59