Почему $ find (strSomeOtherRadAjaxPanel) возвращает ноль? - PullRequest
1 голос
/ 04 ноября 2010

Контекст проблемы:

1) rcbComboBoxInRadPanel - это Telerik RadComboBox.
2) rcbComboBoxInRadPanel имеет событие «OnClientSelectedIndexChange», которое вызывает «itemSelected.»
3) rcbComboBoxInRadPanel содержит radAjaxPanel с именем "foo".
4) strSomeOtherRadAjaxPanel называет RadAjaxPanel, который существует вне «foo».
5) $ find (strSomeOtherRadAjaxPanel) возвращает действительный RadAjaxPanel, если выполняется в одиночку.

function itemSelected(rcbComboBoxInRadPanel) 
{
  var strComboBoxInRadPanel = rcbComboBoxInRadPanel.get_id(); 
  var intRecordID = rcbComboBoxInRadPanel.get_value();
  $find(strSomeOtherRadAjaxPanel).ajaxRequest(intRecordID);                
}

Похоже, что $ find (strSomeOtherRadAjaxPanel) всегда возвращает ноль при вызове из события OnClientSelectedIndexChange объекта rcbComboBoxInRadPanel.

Есть ли другой способ получить действительную ссылку на RadAjaxPanel, используя $ find (strSomeOtherRadAjaxPanel)?

Любая помощь, которую вы можете предложить, будет полезна.

Ответы [ 2 ]

0 голосов
/ 19 июня 2012

проверьте исходный код HTML.ASP динамически генерирует имена clientID, поэтому ваши идентификаторы на стороне сервера могут не сохраняться.Вероятно, теперь они выглядят примерно так: ctl100aFMLksdjflFML

Либо нацеливайте их другим способом (например, имя класса, поиск jQuery и т. Д.), Либо установите для режима идентификатора клиента статический (если это единственный экземпляр этого объекта), затем попробуйтееще раз.

0 голосов
/ 04 ноября 2010

Можете ли вы получить ссылку на strSomeOtherAjaxPanel от другого клиентского обработчика комбо или когда он перемещается за пределы своего держателя панели ajax?Если strSomeOtherAjaxPanel правильно инициализирован на клиенте, он должен быть доступен в каждом из этих случаев.

...