ASP.NET AJAX pageLoad () с несколькими панелями обновления - PullRequest
1 голос
/ 16 ноября 2009

Привет,

Я работаю с парнями, которые разрабатывают приложение с помощью панелей обновления.

Я бы хотел использовать указатель даты jQuery для текстового поля, которое является частью строки, которую можно добавлять несколько раз с помощью этой панели обновлений, и у меня есть JavaScript ниже для успешной работы:

function pageLoad(sender, args)
{
  if(args.get_isPartialLoad())
  {
      $(".datepicker").datepicker({ //rebind to all step datepickers
      duration: ''
      });
  }
}

Однако на этой странице есть несколько панелей обновления, поэтому они запускаются, когда все они обновляются - есть ли способ добавить параметр или подобное, так что это срабатывает только тогда, когда необходимо конкретное событие?

Спасибо, Chris

Ответы [ 2 ]

1 голос
/ 20 ноября 2009

Событие pageLoaded PageRequestManager содержит больше информации. Аргументы имеют свойства get_panelsUpdated и get_panelsCreated (для вложенных панелей обновления). Вы можете использовать это, чтобы определить, какие UpdatePanels были обновлены. Возможно, вы могли бы просто передать панель обновления, разделившую себя на селектор jquery, чтобы отфильтровать только элементы внутри нее.

1 голос
/ 17 ноября 2009

Трудно понять, что именно вы делаете, без примеров кода, но на ум приходит одна вещь: вы убедитесь, что ваши UpdatePanels обновляются только тогда, когда это необходимо, как установлено параметром UpdateMode?

<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" runat="server">

UpdateMode по умолчанию всегда , что означает, что если на странице много UpdatePanels, они все обновятся, если обновится любой из них, что обычно не то, что вам нужно.

...