Это хороший кандидат на «Программу сертификации работ на моей машине» .
У меня есть следующий код для LinkButton ...
<cc1:PopupDialog ID="pdFamilyPrompt" runat="server" CloseLink="false" Display="true">
<p>Do you wish to upgrade?</p>
<asp:HyperLink ID="hlYes" runat="server" Text="Yes" CssClass="button"></asp:HyperLink>
<asp:LinkButton ID="lnkbtnNo" runat="server" Text="No" CssClass="button"></asp:LinkButton>
</cc1:PopupDialog>
Он использует пользовательский элемент управления, который просто добавляет код до и после содержимого, чтобы отформатировать его как всплывающее диалоговое окно. Кнопка Да является гиперссылкой, потому что она выполняет JavaScript, чтобы скрыть диалоговое окно и показать другой. Кнопка Нет является LinkButton, поскольку для обработки этого значения требуется PostBack.
У меня нет события onClick, зарегистрированного в LinkButton, потому что я просто проверяю, является ли IsPostBack истинным. Когда выполняется локально, PostBack работает отлично, и все идет хорошо. При публикации на нашем сервере разработки кнопка Нет ничего не делает при нажатии. Я использую один и тот же браузер при локальном тестировании и на сервере разработки.
Моя первоначальная мысль: возможно, Validator не позволяет PostBack сработать. Я использую несколько валидаторов в другом разделе страницы, но все они назначены определенной группе валидации, которой не назначен LinkButton No . Однако проблема в том, почему он будет работать локально, а не на сервере разработки.
Есть идеи?