![]() |
|
Модераторы: gambit |
![]()
|
|
| HUJG |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 10.1.2006 Репутация: нет Всего: нет |
Долго думал где тему создать в JavaScript или здесь. Решил здесь.
У меня есть два ListBox один с доступными значениями, другой с выбранными. Пользователь на клиенте выбирает значения из доступных (т.е. переносит значения из одного ListBox в другой), потом делает submit на сервер, где сервер обрабатывает выбранные значения. На клиенте юзаю следующую ф-цию:
Беда заключается в том, что на сервер ничего не приходит. Т.е. targetListBox1.Items.Length == 0; Как побороть? |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 9 Всего: 186 |
Честно говоря, я в JavaScript профан, но разве надо не так?
|
|||
|
||||
| HUJG |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 10.1.2006 Репутация: нет Всего: нет |
Да в общем то без разницы я думаю. JS язык более чем демократичный и позволяет над ним по разному извращаться. Но факт остается фактом. И так и так на сервер возвращается пустой targetListBox1
Это сообщение отредактировал(а) HUJG - 5.4.2007, 12:47 |
|||
|
||||
| Naum |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 743 Регистрация: 7.9.2005 Где: Саратов, ул. Поса дского, 298 Репутация: 2 Всего: 15 |
У листбокса, который target ViewState включен?
Если нет, нужно включить. -------------------- У нас всего два праздника Новый год и ТЯПница. |
|||
|
||||
| HUJG |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 10.1.2006 Репутация: нет Всего: нет |
По умолчанию, если ничего не трогать ViewState всегда включен.
|
|||
|
||||
| Mymik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1474 Регистрация: 12.5.2006 Где: Lamer-центер Репутация: 50 Всего: 78 |
HUJG, тебе либо с помощью JS изменять ViewState либо делать AutoPostBack. По другому никак.
-------------------- |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 9 Всего: 186 |
Как вариант, отправлять и принимать енто через AJAX.
|
|||
|
||||
| HUJG |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 10.1.2006 Репутация: нет Всего: нет |
Тогда объясните мне почему в таких контролах как input все замечательно приходит на сервер. В чем принципиально различие между input и select?
|
|||
|
||||
| a.S.d |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 20.2.2005 Репутация: 2 Всего: 2 |
Как это? HUJG, ListBox хранит свои элементы в ViewState, т.е. изменять их нормально можно только на сервере через Items property. На клиенте можеш попробовать записывать все изменения в скрытое поле, а на сервере при постбеке проверять это скрытое поле и соответственно вносить изменение в Item collection листбокса. |
|||
|
||||
| HUJG |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 10.1.2006 Репутация: нет Всего: нет |
хм...
a.S.d В html коде тут все открытым текстом лежит. P.S. ListBox на клиенте у юзера превращается в <select Это сообщение отредактировал(а) HUJG - 5.4.2007, 16:31 |
|||
|
||||
| Mymik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1474 Регистрация: 12.5.2006 Где: Lamer-центер Репутация: 50 Всего: 78 |
a.S.d,
Говорят такое можно сделать, только не бейте, что не знаю как такое сделать. HUJG, DropDownList не предназначен на отправку измененного контент на сторону сервера. Exception, предложил одну из верных идей... только эта идея если ты используешь asp.net AJAX а не сам руками пишешь его... хотя если научишься забирать ViewState для все страницы при этом загружая только часть страницы... ну флаг тебе в руки :о) ты будешь крут. А вообще, еще как вариант, можно записывать данные в HiddenField а на стороне сервера уже распарсивать все это дело... ну вобщем тут уже кому чего хватит... И все же, попробуй поиграться с ViewState там что-то пишут в инете, но я сейчас не успеваю почитать это дело... -------------------- |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка под ASP.NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |