![]() |
|
Модераторы: gambit |
![]()
|
|
| Competitor |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 23.3.2005 Где: Tula Репутация: нет Всего: -1 |
Открываю страничку. На ней находится input. Юзер вводит данные. Как со старой странички узнать, что именно он ввел в новой?
|
|||
|
||||
| vladsch |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 6.12.2006 Репутация: 3 Всего: 4 |
Что подразумевается под старой и новой страницами?
Если подразумевается что юзер вводит что-то, жмет к примеру Submit и обработка идёт на другой странице (например, у кнопки выставлен PostBackUrl на другую страницу), то можно использовать PreviousPage.FindControl или Request.Form |
|||
|
||||
| Competitor |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 23.3.2005 Где: Tula Репутация: нет Всего: -1 |
Нужно изменить элемент другой странички. Пусть текущая страничка default.aspx.
Мне же нужно изменить значение элемента myElement в странички otherPage.aspx. |
|||
|
||||
| vladsch |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 6.12.2006 Репутация: 3 Всего: 4 |
А смысл всего этого? Когда ты находишься на страничке default.aspx, то страницы otherPage.aspx нет в памяти, контролы её не созданы. Так что изменять даже не чего Изменить ты сможешь только если будешь на otherPage.aspx. Если очень нужно такое поведение, то запоминай на default.aspx изменения, которые нужно внести в контрол на otherPage.aspx (в сессии, в базе или где-то ещё) и когда будешь на otherPage.aspx изменяй этот контрол P.S. Всё что я тут сказал верно только в том случае если эти две страницы не живут одновременно в разных фреймах |
|||
|
||||
| Competitor |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 23.3.2005 Где: Tula Репутация: нет Всего: -1 |
vladsch, сперва была загружена страничка MainPage.aspx, так что все ее элементы созданы. Далее юзер нажал на кнопку Button и открылась другая страничка Comment.aspx. В ней пользователь ввел: "Ваш сайт попахивает фикальными выделениями". И закрыл это окно. И мы опять оказались на исходной MainPage.aspx. Как мне теперь узнать, что написал юзер на страничке Comment.aspx.
Я так понимаю, нуно со странички Comment.aspx передать инфу на MainPage.aspx. Так вот как это сделать. Допустим я хочу присвоить введенные данные элементу myElement. |
|||
|
||||
| vladsch |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 6.12.2006 Репутация: 3 Всего: 4 |
Ок, понял проблему. Решается способами, которые я упомянул в первом посте
Пример: 1. PreviousPage Значит так, находимся на Comment.aspx На этой странице есть контрол TextBox1 для комментов и кнопка для подтверждения комментов У этой кнопки выставим параметр PostBackUrl в "MainPage.aspx" На этой странице всё На странице MainPage.aspx пусть будет лейбл, который будет отображать коммент, если был выполнен кросс постбек. Обработчик Page_Load
Здесь можно сделать улучшение, типа можно принимать PreviousPage только определлённого типа Ну это ты сам в мсдн посмотри 2. Request.Form Входные условия те же На MainPage.aspx обработчик Page_Load
Этот вариант, мне кажется, будет работать не всегда, так как ASP может заменить ID на что-то другое (не даром у контролов есть свойство ClientID) |
||||
|
|||||
| Pankon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: 2 Всего: 5 |
||||
|
||||
| Pankon |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: 2 Всего: 5 |
Competitor, не умеешь(читай не можешь) прислушиваться к советам? Что ж, даю наводящие примеры: MainPage.aspx
Наслаждайся своим сайтом ПС1. А что такое - Флудираз? ПС2. Попытайся подумать в следующий раз сам..... , когда будешь понижать рейтинг. Ну или поиск в сети.... |
||||
|
|||||
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
И что-то все равно ничего не помогает.
PreviousPage всегда NULL. |
|||
|
||||
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
UP
|
|||
|
||||
| tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 34 Всего: 170 |
PreviousPage будет не null если делать переход через Server.Transfer или свойство кнопок PostBackUrl
Response.Redirect("Default2.aspx") тоже не даст PreviousPage
посмотрите в браузере чем отличается конечная html разметка для перехода на Default2.aspx -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
Ага, теперь понятно, все работает. Но, возникает следующая проблема, а что если мне необходимо при нажатии на кнопку написать еще обработчик, и в зависимости от каких-то определенных параметров переход будет осуществляться либо на одну страничку либо на другую.
|
|||
|
||||
| tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 34 Всего: 170 |
Не используйте PostBackUrl, а напишите обычный серверный обработчик кнопки. В нем, в зависимости от условий, выполняйте или Transfer на ту или иную страницу. При этом в браузере правда урл останется тем же, что был на исходной странице, или Redirect на ту или иную страницу. Недостаток - лишний вызов с клиента
Или напишите клиенсткий javascript, если условия выбора могут быть вычислены на клиенте (не будет лишнего вызова) и повесьте его на кнопку. вариантов много -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [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. |