как отправить значение текстового поля с одной страницы на другую с помощью querystring

#asp.net

#asp.net

Вопрос:

У меня есть страница 1 и ссылка на этой странице, которая открывает страницу 2. На странице 1 есть текстовое поле, значение которого необходимо передать на страницу 2, когда пользователь нажимает на ссылку для страницы 2.

Во-первых, я думал использовать событие onTextbox changed, но не могу использовать это, поскольку значения в текстовом поле генерируются автоматически.

После загрузки страницы 1 значение в текстовом поле равно 1, которое необходимо передать на страницу 2 при нажатии на страницу 2. я хочу сделать это с помощью querystring. пожалуйста, введите данные.

Ответ №1:

Вы могли бы легко сделать это с помощью LinkButton. Обработайте событие click на кнопке LinkButton для Page2, а затем создайте свой ответ.Перенаправление с соответствующими парами ключ / значение строки запроса:

HTML:

 <asp:TextBox ID="TextBox1" runat="server" />
<asp:LinkButton ID="LinkButton1" runat="server" Text="Page2" />
  

РАЗРАБОТКА КОДА:

 Private Sub LinkButton1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LinkButton1.Click
    Response.Redirect(String.Format("Page2.aspx?tb={0}", Server.HtmlEncode(TextBox1.Text)))
End Sub
  

Комментарии:

1. Я сделал это как LinkButton9. Атрибуты. Add(«onclick», «httpPage2.aspx?index= 1»); это выдает синтаксическую ошибку.

2. @Janet — Извините, вчера мне пришлось уйти с работы, и я только что увидел это. Да, добавление onclick на стороне клиента к LinkButton на самом деле не имеет особого смысла, поскольку вся причина, по которой вы используете LinkButton, заключается в том, что вы можете обрабатывать событие click на стороне сервера.

Ответ №2:

Вы могли бы использовать LinkButton и обработать событие click в codebind. Там вы можете ответить.Перенаправьте на страницу 2 и добавьте текст текстового поля к строке запроса.

 Dim newLink as String = _
   String.Format("Page2.aspx?TextBox1Text={0}", Server.HtmlEncode(TextBox1.Text))
Response.Redirect(newLink)
  

Ответ №3:

Почему бы не использовать POST и Server.Передача?

Используя сервер.Передача затем вы можете получить доступ ко всем свойствам формы с предыдущей страницы.

http://msdn.microsoft.com/en-us/library/ms525800(v=vs.90).aspx

Комментарии:

1. Я согласен с вами, но мой руководитель хочет, чтобы я сделал это с помощью строки запроса. Не могли бы вы помочь мне с примером кода для достижения этой цели, поскольку я новичок в этом.

2. @Janet — знает ли ваш руководитель, что, предоставляя значение формы в строке запроса, это в значительной степени делает это бессмысленное упражнение? В конце концов, я могу просто изменить значение QS и запросить страницу снова.