Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Обработка событий от элементов управлений / 17 сообщений из 17, страница 1 из 1
16.08.2006, 12:58
    #33921374
Constantinople
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
Привет !
Вопрос такой. Есть несколько элементов управления (имеющих атрибут runat=server), объединенных <div runat=server>-ом.
Для некоторых этих элементов хочется добавить клиентские обработчики (например JS) с целью что-то скрыть или показать.
Это в принципе возможно и как реализовать?
До сих пор у меня не получалось ...

Спасибо !  

   
...
Рейтинг: 0 / 0
16.08.2006, 13:16
    #33921448
Sergio
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
Привет !
Вопрос такой. Есть несколько элементов управления (имеющих атрибут runat=server), объединенных <div runat=server>-ом.
Для некоторых этих элементов хочется добавить клиентские обработчики (например JS) с целью что-то скрыть или показать.
Это в принципе возможно и как реализовать?
До сих пор у меня не получалось ...

Спасибо !


Хотелось бы по-подробнее, чего именно нужно.
Но в принципе возможно. Вот Вам примерчик c div-ом:
divId.Attributes.Add("onclick", "alert('Wow!!!')");
"runat=server" - штука важная, только id тоже должно быть, ну в codebehind-е его прописать надо, чтобы потом пользовать.
Хотя на HtmlControls клиентский скрипт можно вешать и в aspx, а вот на WebControls - в codebehind.
...
Рейтинг: 0 / 0
16.08.2006, 14:16
    #33921777
Constantinople
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
У меня есть

<div id="" runat=server>

<asp:radiobuttonlist OnSelectedIndexChanged="setVis" id="rbl" runat=server
</asp:radiobuttonlist>
  
</div>

хочется отрабатывать OnSelectedIndexChanged
в скрипте на стороне клиента
<sript ....>
    setVis()
   {
        alert('Woa!');
   }
</script>

НО, при установке runat=server в radioButtonList  компилятор пишет, что не находит setVis, а без runat=server radioButtonList некорректно отрабатывается.
...
Рейтинг: 0 / 0
16.08.2006, 15:09
    #33922028
Sergio
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
У меня есть

<div id="" runat=server>

<asp:radiobuttonlist OnSelectedIndexChanged="setVis" id="rbl" runat=server
</asp:radiobuttonlist>

</div>

хочется отрабатывать OnSelectedIndexChanged
в скрипте на стороне клиента
<sript ....>
setVis()
{
alert('Woa!');
}
</script>

НО, при установке runat=server в radioButtonList компилятор пишет, что не находит setVis, а без runat=server radioButtonList некорректно отрабатывается.


Потому что ето серверное событие, а не клиентское. И компилятор ищет setVis на сервере, т.е. в codebehind.
Я тут покопался, и с radiobuttonlist малость косорезик выходит, потому как ето контейнер и AddAtributes надо вешать на его ChildControls, а ето как раз и не получается. Могу предложить заменить его на толпу просто RadioButtons, динамически их генерить и вешать на них события на клиенте: RadioButton1.Attributes.Add("onclick", "alert('wow!');"); - ето работает.
...
Рейтинг: 0 / 0
16.08.2006, 15:34
    #33922176
Constantinople
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
Спасибо.
А где этот код ( RadioButton1.Attributes.Add("onclick", "alert('wow!');");   )

необходимо прописать?
...
Рейтинг: 0 / 0
16.08.2006, 15:49
    #33922254
SkyLight
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
это серверный код, т.е. писать его надо где-нибудь в Code Behind
...
Рейтинг: 0 / 0
16.08.2006, 15:57
    #33922295
Sergio
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
Спасибо.
А где этот код ( RadioButton1.Attributes.Add("onclick", "alert('wow!');"); )

необходимо прописать?

В Page_Load в самый раз будет.
...
Рейтинг: 0 / 0
16.08.2006, 16:20
    #33922421
vladgrig
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
тынц - правда это про ListBox но есть думка, что с радиобатонлист тоже прокатит ;)
P.S. см. пост profil... в самом конце...
...
Рейтинг: 0 / 0
16.08.2006, 16:20
    #33922425
Constantinople
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
Вы утверждаете, что после этого обработчик будет работать только у клиента ?
...
Рейтинг: 0 / 0
16.08.2006, 16:34
    #33922501
vladgrig
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
незнаю кому посвящался последний пост - только что попробовал - структура немного другая у радиоблиста на странице получается - походу к рбатонлисту такое не применимо... :(
...
Рейтинг: 0 / 0
16.08.2006, 20:42
    #33923241
vladgrig
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
авторЯ тут покопался, и с radiobuttonlist малость косорезик выходит, потому как ето контейнер и AddAtributes надо вешать на его ChildControls, а ето как раз и не получается.
я тут тоже покопался - получается совсем неплохо ;)
Код: plaintext
1.
2.
3.
For i As Integer =  0  To RadioButtonList1.Items.Count -  1 
            RadioButtonList1.Items(i).Attributes.Add("onclick", "alert(this.value + ' ' + this.checked);")
Next
...
Рейтинг: 0 / 0
17.08.2006, 11:41
    #33924139
Sergio
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
авторЯ тут покопался, и с radiobuttonlist малость косорезик выходит, потому как ето контейнер и AddAtributes надо вешать на его ChildControls, а ето как раз и не получается.
я тут тоже покопался - получается совсем неплохо


For i As Integer = 0 To RadioButtonList1.Items.Count - 1
RadioButtonList1.Items(i).Attributes.Add("onclick", "alert(this.value + ' ' + this.checked);")
Next

Дык к этому я тоже пришел, и компилируется красиво, а вот на клиенте в View Source не фига не видно
.
...
Рейтинг: 0 / 0
17.08.2006, 11:59
    #33924210
vladgrig
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
авторДык к этому я тоже пришел, и компилируется красиво, а вот на клиенте в View Source не фига не видно
невидно простите что именно?...
пример
...
Рейтинг: 0 / 0
17.08.2006, 12:07
    #33924250
Sergio
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
авторЯ тут покопался, и с radiobuttonlist малость косорезик выходит, потому как ето контейнер и AddAtributes надо вешать на его ChildControls, а ето как раз и не получается.
я тут тоже покопался - получается совсем неплохо


For i As Integer = 0 To RadioButtonList1.Items.Count - 1
RadioButtonList1.Items(i).Attributes.Add("onclick", "alert(this.value + ' ' + this.checked);")
Next


Сделал тоже самое на С#:
for(int i=0; i < RadioButtonList1.Items.Count; i++)
RadioButtonList1.Items[i].Attributes.Add("onclick", "alert(this.value + '' + this.checked);");
Но "onclick" не рендерится внутри <input>
.
...
Рейтинг: 0 / 0
17.08.2006, 12:41
    #33924432
vladgrig
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
незнаю - может я волшебник?... ;) сурс то в примере можно посмотреть...
P.S. есть думка что всё это от использования ASP.NET 2.0
...
Рейтинг: 0 / 0
17.08.2006, 12:49
    #33924460
Sergio
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
Дык... сурс видел все работает со всем согласен
(это и убивает).
Да и нет там ничего сложного..., может действительно студия.
Я все еще в 1.1
...
Рейтинг: 0 / 0
17.08.2006, 16:00
    #33925313
monstrU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий от элементов управлений
вообще я повесил обработку клика непосрдественно на сам контрол
то есть RadiaButtonList1.Attributes.add("onclick","....");
а уже потом смотрел в клиентском скрипте от кого пришло событие

function ClearUsePeriod(controlID, cbUsePeriod)
{
if (event.srcElement.id.indexOf(controlID)>=0)
{
var cbI=document.getElementById(event.srcElement.id)

// делаем что надо
}
}
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Обработка событий от элементов управлений / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]