powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / __PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
10 сообщений из 10, страница 1 из 1
__PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
    #37862963
Conditional Reflex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообщем незнаю как бы правильнее назвать было тему.

Имею такую проблему:

Отсылаю данные из текстбокса по нажатию кнопки. (оба стандартных контрола ASP.NET)
Код: html
1.
2.
3.
<asp:TextBox ID="TextBoxMSG" Width="720px" Height="100px" TextMode="MultiLine" runat="server"></asp:TextBox>

<asp:Button ID="ButtonSend" runat="server" Text="Отправить" Width="150px" Height="25px" OnClick="ButtonSend_Click" />


При исполнении кода на сервере, делаю проверку
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
    protected void ButtonSend_Click(object sender, EventArgs e)
    {
        if (TextBoxMSG.Text.Trim().Length > 0)
        {
            SendMessage();
            TextBoxMSG.Text = ""; // затираю данные в текстбоксе, что-бы случайно не постили пустышки
        }
    }


однако, на клиенте значение в текстбоксе пусто (тустой текстбокс в браузере), НО ЕСЛИ нажать в браузере обновить, то срабатывает постбэк нажатой кнопки и постится предыдущее значение текстбокса.

Как побороть? Уже незнаю что пробовать.
...
Рейтинг: 0 / 0
__PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
    #37863069
Deza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Conditional Reflex,

попробуй так
Код: c#
1.
2.
3.
4.
if (!String.IsNullOrEmpty(TextBoxMSG.Text))
{
                
}
...
Рейтинг: 0 / 0
__PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
    #37863078
Conditional Reflex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дело не валидности проверки длины строки

Дело в том что в текстбоксе лежит значение, которое постил пользователь. Хотя в браузере оно не отображается

Смотрел под отладкой.
Такое впечатление что данные текстбокса хранятся еще где-то, как бы глупо не звучало
...
Рейтинг: 0 / 0
__PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
    #37863093
Conditional Reflex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема заключается в
1. Пользователь постит сообщение
2. Сервер добавляет данные
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
    protected void ButtonSend_Click(object sender, EventArgs e)
    {
        if (TextBoxMSG.Text.Trim().Length > 0)
        {
            SendMessage();
            TextBoxMSG.Text = ""; // затираю данные в текстбоксе, что-бы случайно не постили пустышки
        }
    }


3. команда TextBoxMSG.Text = "" затирает данные в текстбоксе. В браузере текстбокс чистый

4. Если нажать обновить в браузере, происходит постинг предыдущего значения (то есть ОПЯТЬ вызывается постбэк кнопки, идет проверка значения текстбокса, в котором лежит значение предыдущей транзакции, в результате будет столько одинаковых сообщений, сколько и нажатий кнопки "Обновить")
...
Рейтинг: 0 / 0
__PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
    #37863128
chessar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Conditional Reflex,
Делать редирект на текущую же страницу после кода обработки нажатия кнопки.
...
Рейтинг: 0 / 0
__PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
    #37863146
Conditional Reflex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
До этого случая так всегда и делал.

Хотел по элегантнее решение найти.
...
Рейтинг: 0 / 0
__PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
    #37863249
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
выключить вьюстест не ?
...
Рейтинг: 0 / 0
__PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
    #37863261
chessar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
handmadeFromRu,
Это непоможет.

Если без редиректа, то использовать сессию что-ли например, запоминать что нажата была кнопка при постбэке в Page_Load, а после обработки затирать.
...
Рейтинг: 0 / 0
__PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
    #37863334
Conditional Reflex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chessar,

Похоже так и прийдется делать.
...
Рейтинг: 0 / 0
__PostBack кнопки и TextBox, при нажатии в браузере "Обновить"
    #37863614
Conditional Reflex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Решил проблему, поместил все барахло на UpdatePanel проблемма ушла сама собой. Причина все-таки во ViewState мне кажется. Дальше копать не стал.

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


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