2010-03-31 3 views
1

Я ищу для создания настраиваемого выбора даты с примерами кода из нескольких источников.Отображение управления ASP.NET при событии

Является ли код для отображения/скрытия элемента управления ASP.NET, когда пользователь нажимает кнопку, обычно выполняемую с помощью кода JavaScript или ASP.NET? При отображении/скрытии я имею в виду внутри страницы не всплывающее окно.

Просьба привести простой пример. (Если ASP.NET, пример VB предпочтителен над C#)

ответ

1

Ответ, это зависит. Вы хотите, чтобы диспетчер даты показывал/скрывал, чтобы вызвать обратную передачу и, следовательно, некоторый код на сервере, или вы хотите, чтобы он действовал исключительно на клиенте?

Если вы хотите, чтобы действовать исключительно на клиенте, а затем, изменять разметку для вашей кнопки:

<asp:Button runat="server" ID="myButton" OnClientClick="ShowHideCalendar()" Text="myButton" /> 
<script language="javascript" type="text/javascript"> 
var calendarVisible = false; 
function ShowHideCalendar() 
{ 
    if (calendarVisible) 
    { 
    // Code to *SHOW* calendar here 
    // Show the DIV it's contained in, pop the window with it in, etc.. 
    } 
    else 
    { 
    // Code to *HIDE* the calendar here 
    } 
} 
</script> 

Ключевой бит является собственностью «OnClientClick» из осины: Кнопка управления.

0

Его лучшая практика, чтобы сделать такую ​​вещь асинхронно, вместо того, чтобы иметь полный postback, который обновляет всю страницу. Это означает, что у вас есть два варианта:

  1. Обновление UpdatePanel, в котором ваш управления находится. Это дает вам преимущество только повторного рендеринга содержимого в UpdatePanel.
  2. Используйте клиентские скрипты для переключения управления . Вам также необходимо выполнить обратный вызов , который сообщает вашему коду , что вы просто переключили видимость , чтобы ваш код находился в том же , что и его веб-страница.

Я предпочел бы использовать второй.

Смежные вопросы