Отображение элемента управления ASP.NET при событии - PullRequest
1 голос
/ 31 марта 2010

Я хочу создать пользовательский инструмент выбора даты с примерами кода из нескольких источников.

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

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

Ответы [ 2 ]

1 голос
/ 31 марта 2010

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

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

<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" элемента управления asp: Button.

0 голосов
/ 31 марта 2010

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...