powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / OnClick before Page_Load
8 сообщений из 8, страница 1 из 1
OnClick before Page_Load
    #33249699
Rosiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем следующая проблема: есть некий контрол и форма добавления данных в этот контрол на той же странице. Вводим данные, нажимаем кнопку, данные добавляем в базу, но при отображении только что добавленные данные не отображаются, т.к. после нажатия конпки сначала все равно page_load проскакивает, а уж потом обработчик onClick. Нужно чтобы после нажатия на кнопку сначала кнопку отработало, а уж потом страницу выводило. Кто нить в курсе как?
...
Рейтинг: 0 / 0
OnClick before Page_Load
    #33249707
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Javascript?
...
Рейтинг: 0 / 0
OnClick before Page_Load
    #33249708
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sorry, ili proverjat if (!IsPostBack) na OnPage_Load()

PS. Izvinjajus za latinicu, na translit.ru dostupa ne imeju.
...
Рейтинг: 0 / 0
OnClick before Page_Load
    #33249747
Артем1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не очень понял, что надо, но вижу только 2 способа.
первый вам уже подсказали, использовать js и добавлять данные еще на клиенте перед постбэком.
второй - это в коде онклик после сохранения данных в базу доставать их оттуда и заново биндить к контролам. т.е. лучше будет вынести код извлечения и прибиндивания данных в отдельный метод, и вызывать его в Page_Load и в онклик кнопки.

уфф. надеюсь, правильно понял проблему. Удачи.
...
Рейтинг: 0 / 0
OnClick before Page_Load
    #33250324
Rosiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronJavascript?
Странное у вас виденье решение проблемы. Onclick у нас на сервере обрабатывается, а вы предлагаете это клиентом обработать :)
дальше,
ili proverjat if (!IsPostBack) na OnPage_Load()
Мало ли от чего у нас !IsPostBack произошел. Откуда ясно что я нажал эту кнопку а не что-нибудь еще?

Артем1использовать js и добавлять данные еще на клиенте перед постбэком
Не совсем понял, это как? Как я добавлю данные на клиенте не обращаясь к серверу. Это мне надо будет новый объект через Js создавать, потом туда вставлять....а если обновление в базе не пройдет? :) Много писанины на ровном месте (откровенно влом).

после сохранения данных в базу доставать их оттуда и заново биндить к контролам. т.е. лучше будет вынести код извлечения и прибиндивания данных в отдельный метод, и вызывать его в Page_Load и в онклик кнопки.
Эта идейка приходила мне в голову, но просто 2 раза дергать базу по одному и тому же поводу как-то нехорошо. Хотя судя по всему именно так и предется сделать :(. Просто такого идиотизма в ASP не было. Хотя осталась еще одна йдейка: есть же методы типа PreRender и другие. Наверняка же есть такие, которые вызываются позже onClick. Тогда забиндивание перенесу в них и должно быть все ок.

P.S. Спасибо за содействие, по крайней мере навели на мысль, что уже есть good :)
...
Рейтинг: 0 / 0
OnClick before Page_Load
    #33250342
Rosiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, и вправду немножко протормозил. В onLoad биндим контрол в блоке !IsPostBack, тогда при onClick он остается "старым". Доходит до обработчика onClick, а там пишем insert + тоже самое что в onLoad (почистив только перед этим естественно). И все счастливы.
...
Рейтинг: 0 / 0
OnClick before Page_Load
    #33250940
nostra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может событие Page_PreRender использовать вместо Page_Load.
Т.е. сначало сработает onClick, а потом Page_PreRender.
...
Рейтинг: 0 / 0
OnClick before Page_Load
    #33251430
german23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Самый простой способ: проверять при постбэке - нажата ли нужнайа клавиша.
в событии Page_load:
if (Request.Form[btn_back.UniqueID] != null)

значит была нажата кнопка "btn_back" - и далее делаим чо там надо.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / OnClick before Page_Load
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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