2009-10-14 6 views
1

Я использую набор управления Telerik ASP.net (2008 Q3, я считаю, еще не может обновиться). У меня есть radcombobox в элементе управления Radgrid (в Шаге Редактирования GridTemplateColumn). Если функции в порядке, но у меня есть проверка на стороне клиента на других элементах управления в сетке (которые, кажется, работают без ошибок). По какой-то причине после проверки на стороне клиента, поле со списком перестает функционировать. Нет видимых ошибок js, вещь просто умирает.Telerik RadComboBox на стороне клиента RadGrid Оценка

Кто-нибудь видел это и исправил? Google провалил меня.

Благодарим за помощь.

ответ

1

Хорошо, я решил. Очень неуклюжая работа.

Во-первых, у меня есть панель за пределами многопользовательской панели, которая содержит мою сетку с другим аналогичным Radcombobox, который также умер при проверке. Я начал думать, что если бы я сделал какой-то пост назад, это исправит что-то по какой-то причине? Поэтому в моей сетке я добавил настраиваемый валидатор, который проверяет RadComboBox в моей сетке. Он вызывает метод Javascript валидации как так ...

function valCOMBO(o, a) { 
     a.IsValid = true; 
     setTimeout(Res, 500); 
     } 
     function Res() { __doPostBack("<%=OPCOCombo.UniqueID %>");} 

Примечания, поскольку это поле не обязательно для заполнения пользователя, всегда возвращаются действуют верно. Здесь происходит квазимагия. Я делаю сообщение обратно на OTHER RadComboBox на верхней панели за пределами сетки в javascript. Верхняя часть сетки RadComboBox имеет свой автоповтор, установленный в true, не знаю, нужно ли это, если вы попробуете этот пример.

Это сработало. Внезапно оба RadComboBoxes, как в сетке, так и выше, снова начали работать. Но я заметил, что значение иногда будет потеряно в RadComboBox сетки, поэтому для хихиканья я добавил небольшую паузу, прежде чем делать сообщение за 500 мс. Это сделал трюк. На самом деле это будет работать с очень небольшой паузой, но я увеличил ее до 500 мс за безопасную маржу, если бы конечный пользователь находился на медленном соединении, и это может иметь значение.

Cluggy, cluggy, cluggy. Хотелось бы, чтобы я только что использовал jQuery и использовал альтернативу этим фальшивым телескопам radcomboboxes, но это жизнь (я слышал, что ограниченная версия jQuery запутана в Telerik, будет экспериментировать с ней на последующих выпусках). Какая у меня отстойная ставка, последняя версия Telerik исправляет эту проблему (это лучше), поэтому все это сотрясается в результате, когда мы обновляемся (пока не можем, некоторые конфликтуют с некоторыми настраиваемыми элементами управления, которые мы наследуем от наследования от Telerik. Jan Q1 2009+ разорвать эти элементы управления :()

Надежда это может помочь кому-то.

+0

Эта «очень неуклюжая» работа только что спасла мне часы работы ... спасибо тонну !!! –

0

Другой вариант. Я побежал в сценарии, где я должен был использовать много RadComboboxes так, а не беспокоиться о проверке их содержимое, я просто добавил текстовые поля с кнопкой рядом с каждой из них, которая откроет radwindow с RadComboBox, поэтому значения могут быть выбраны динамически. В выбранном javascript передается выбранное значение обратно на целевой элемент на странице открывания окна. несколько головных болей, которые мне пришлось сработать, хотя имея набор параметров контекста, установленных в javascript, прежде чем вызывать веб-сервис для каждого ключа вверх (подсказка: с IE устанавливают высоту Radcombobox по крайней мере для версий Telerik 2008 года ... если вы этого не сделаете, вы начнете замораживать).

Опять же, надеюсь, эта идея полезна.

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