До тех пор, пока вы не инициируете обратную публикацию с использованием исключительно JavaScript, ASP.NET будет использовать обычную обратную передачу сообщений, которая в основном представляет собой отправку HTML-форм. Жизненный цикл серверной страницы более или менее одинаков с использованием <asp:UpdatePanel>
, так что ваша страница должна изящно ухудшаться.
Когда вы можете столкнуться с проблемами, вы должны использовать элемент управления, такой как <asp:LinkButton>
, так как этот элемент управления использует JavaScript для выполнения обратной отправки. Вы можете обойти это, используя следующий (пример) код:
<noscript>
<asp:Button runat="server" OnClick="Click_Handler" Text="Update" />
</noscript>
<asp:LinkButton runat="server" OnClick="Click_Handler" Text="Update" />
Клиенты, которые не поддерживают JavaScript, должны сначала отобразить обычную кнопку, другие браузеры должны игнорировать ее. Чтобы повысить удобство использования, вы должны рассмотреть возможность отображения элемента ссылки с помощью JavaScript:
<span class="hidden">
<asp:LinkButton runat="server" OnClick="Click_Handler" Text="Update" />
</span>
<script type="text/javascript">
// PSEUDO CODE:
document.ready ? for each span.hidden : show
</script>
Обратная запись на основе JavaScript может происходить для нескольких элементов управления и событий, а не только для LinkButton
(например, DropDown
элемент управления с AutoPostBack="True"
или TextBox
с OnTextChanged
событием).