Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
ansi_str
56 / 56 / 15
Регистрация: 22.09.2011
Сообщений: 316
1

Не меняется значения серверного элемента управления при изменении его на клиенте

25.04.2012, 20:16. Просмотров 846. Ответов 7
Метки нет (Все метки)

Здравствуйте,

Столкнулся с интересной проблемой - есть контрол, напримера asp:Label
Используя JavaScript функцию я меняю его значение(innerHTML) - но при обращении к нему на сервере(в коде C#) значение как было по умолчанию так и осталось. Почтиал немного - Microsft в целях безопасности так сделало, есть какой то более красивый выход из ситуации, чем использование hiddenField?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.04.2012, 20:16
Ответы с готовыми решениями:

Клиентский скрипт для серверного элемента управления
Вопрос простой Есть серверный (веб формовский) контрол. Мне надо сделать обработку и на сервере и...

Выделение поля цветом при изменении его значения
Доброго времени суток господа! Так как я в языке SQL почти полный ноль, а с access я должен...

Сохранять координаты захвата мышью элемента управления при его перемещении
Здравствуйте,нужна помощь. Имеется форма в которой добавлен элемент в виде изображения. Так же...

При решении блоком Given/Find не меняется результат при изменении приближенных значений
Здравствуйте! При решении задания по ТОЭ возникла необходимость использования блока Given/Find, но...

DataViewRowState не меняется при изменении в DataGrid
Есть DataGrid соединенный с DataSet, при изменении значения в ячейке запускается цикл, который по...

7
sau
2022 / 1635 / 271
Регистрация: 22.07.2011
Сообщений: 6,212
Завершенные тесты: 1
25.04.2012, 21:42 2
Label(он же span) не является элементом формы и его значение на сервер не отправляется.
По поводу остальных контролов формы, у них есть так называемый ViewState/StateBag, в который они сохраняют свои значения. И если отслеживание изменений со стороны клиента у них не предусмотрено, то они могут восстановить себя из ViewState-а.
Но значения основных контролов формы, меняются на клиенте без проблем.
1
ansi_str
56 / 56 / 15
Регистрация: 22.09.2011
Сообщений: 316
26.04.2012, 04:32  [ТС] 3
Очень интересно
Получается - остаётся только один выход - записывать изменения в hiddenField на клиенте и считывать из них на сервере значения...Не хочется возиь туда - сюда информацию при запросе. Я думал есть более "гибкий" выход
0
andrii
183 / 183 / 53
Регистрация: 10.04.2009
Сообщений: 491
26.04.2012, 12:22 4
C#
1
Request.Form["html_control_id"]
походу еще так можно
1
sau
2022 / 1635 / 271
Регистрация: 22.07.2011
Сообщений: 6,212
Завершенные тесты: 1
26.04.2012, 13:47 5
походу еще так можно
- при отправке формы, в запросе передаются данные только для элементов формы типа input, иначе если только ручками post забивать.
Label, Literal и тому подобные контролы в итоге преобразуются в обычные, не input , html элементы, по этому ловить их значения в Request-е нет никакого смысла, хоть по id, хоть еще как, их там просто нету.

Если очень хочется то можно так:
Javascript
1
$.post("page.aspx", { Label: $("#<%=cntLabel.ClientID%>").val() } );
0
ku1gun
2 / 2 / 0
Регистрация: 20.04.2012
Сообщений: 18
26.04.2012, 13:54 6
Цитата Сообщение от ansi_str Посмотреть сообщение
Здравствуйте,

Столкнулся с интересной проблемой - есть контрол, напримера asp:Label
Используя JavaScript функцию я меняю его значение(innerHTML) - но при обращении к нему на сервере(в коде C#) значение как было по умолчанию так и осталось. Почтиал немного - Microsft в целях безопасности так сделало, есть какой то более красивый выход из ситуации, чем использование hiddenField?
Офигеть!! Бывают же совпадения. Сам уже битый час сижу с этим вопросом((( И тут точно такая тема, один в один на форуме!
Если нашли решение, отпишите пожалуйста!
0
sau
2022 / 1635 / 271
Регистрация: 22.07.2011
Сообщений: 6,212
Завершенные тесты: 1
26.04.2012, 13:57 7
C#
1
string Label = Request["Label"];
0
ku1gun
2 / 2 / 0
Регистрация: 20.04.2012
Сообщений: 18
26.04.2012, 14:01 8
Это, как я понял по ИД контрола? (необходимо по ИД)
0
26.04.2012, 14:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.04.2012, 14:01

При изменении DataTable не меняется RowState
Здравствуйте, уважаемые! Столкнулась с такой странностью... Через Binding привязываю данные из...

Не меняется дата при изменении времени
tz_database tzDB; tzDB.load_from_file(&quot;C:/date_time_zonespec.csv&quot;); std::string ms =...

Меняется стиль при изменении класса
Как же весело находить различные баги в своем коде... У нас есть HTML footer`а вместе с bootstrap...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru