Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Разработка под ASP.NET > Как обновить страницу по приходу данных с другой? |
Автор: LightVolk 6.8.2013, 15:39 | ||||||
Здравствуйте! Есть приложение, на главной странице кнопка, по нажатию вызывается popup окно (aspx страница) В ней обрабатываются данные и по нажатию на кнопку "Добавить" данные пишутся в базу. Дальше мне нужно передать данные главной странице о том, что ей нужно перезагрузиться. Как это сделать? Я пробую вот так: В PopUp странице после всех операций- по нажатию на кнопку:
На главной странице прием этих данных в Page_Load:
Нужно ли засовывать этот код в
? После отработки popup формы и ее закрытия ничего не происходит. Если потом перезагрузить главную страницу, то str1=="value1". Но как сделать так,чтобы страницу не нужно было перезагружать самому? Спасибо. |
Автор: boevik 7.8.2013, 08:01 |
Команду redirect надо поставить в функции buttonadd_click. |
Автор: Kill_em_all 7.8.2013, 10:02 | ||||||||
После сохранения необходимо вызвать js
Это вызовет обновление главной и закрытие попап. Можно этот повесить на отдельную на отдельную не серверсайд кнопку или на OnClientClick кнопки ButtonAdd (в этом случае, если не ошибаюсь, необходимо и самому вызвать __doPostback() для постбэка)
Нет. На главной постбэка не будет Добавлено через 3 минуты и 26 секунд
эта кнопка у него на странице в попап окне. Редирект произойдет в нем же |
Автор: LightVolk 7.8.2013, 13:38 | ||||||||
Вероятно я делаю все неправильно... Отказался от Session Теперь у меня так: В родительском окне:
В дочернем окне:
Правда теперь страница перегружается предварительно спросив о том хотите ли вы послать повторно данные. Плюс Checkbox не выделаяется как Checked==true :
Сюда программа не доходит: Name = Convert.ToString(GridViewRedactorNames.DataKeys[row.RowIndex].Value); Просто пропускает проверку if. Так как все checkbox =false. Хотя я выделяю несколько checkbox-ов. Код :
Получается парадоксальная ситуация: Если убираю код в PostBack , то не работает добавление в родительском окне, зато работает удаление в дочернем. Если оставляю код- то не работает удаление в дочернем , а добавление строк в родительском окне работает! Подскажите пожалуйста , что я делаю не так. |
Автор: LightVolk 7.8.2013, 14:19 |
Так, проблема в том, что я перебиндиваю GridView и поэтому теряются все данные о нажатых checkbox-ах. Как же тогда решить эту проблему? Может использовать Session["isPopUp"]="true"; - при вызове кнопки в дочернем окне? А в родительском -проверять это свойство ? |
Автор: LightVolk 7.8.2013, 15:45 | ||
Получилось вот так: В коде главной страницы:
В результате все заработало...Надеюсь:) |