У меня есть кнопка ссылки:
<asp:LinkButton ID="LinkButtonPrint" runat="server" OnClick="OnPrint_Click">
<img src="img/print-icon.png" alt="" />
<asp:Literal runat="server" Text="<%$ Resources:PrintPage %>" />
</asp:LinkButton>
В коде позади я добавляю обработчик onclick
в Page_Load
следующим образом:
LinkButtonPrint.Attributes["onclick"] = "StartLoadTracking(this, '" + GetLocalResourceObject("Loading") + "')";
Представленный HTML выглядит следующим образом:
<a href="javascript:__doPostBack('ctl00$LinkButtonPrint','')"
id="ctl00_LinkButtonPrint" onclick="StartLoadTracking(this, 'Loading...');">
<img alt="" src="img/print-icon.png">Print page
</a>
Если я нажму на эту кнопку, он будет работать нормально (он ответит файлом PFD, поэтому HTML-код не будет отправлен обратно в браузер), но если я нажму кнопку другой на странице (что делает полный postback) LinkButtonPrint
не будет иметь внутренний контент, он будет отображаться следующим образом:
<a href="javascript:__doPostBack('ctl00$LinkButtonPrint','')"
id="ctl00_LinkButtonPrint" onclick="StartLoadTracking(this, 'Loading...');"></a>
Если я удаляю строку LinkButtonPrint.Attributes["onclick"] = ...
из Page_Load
, все работает нормально (за исключением того, что моя js-функция не вызывается, но это нормально).
Что мне здесь не хватает?
ИЗМЕНИТЬ
Это дубликат
Изображение кнопки asp.net Link не видно после обратной передачи
но этот не решается также: (