2014-02-16 4 views
13

Что происходит при нажатии кнопки отправки? Пусть Я форму, расположенную на http://example.com/ URL с двумя input элементами, как это:Что происходит при нажатии кнопки отправки

<form method="get"> 
    <input type="text" id="field1" name="namefield1"/> 
    <input type="text" id="field2" name="namefield2"/> 
    <input type="submit" value="submit"/> 
</form> 

Что на самом деле получить запрос будет отправлен в http -server в моем конкретном случае?

+1

скачать [Скрипач] (http://www.telerik.com/fiddler) и посмотреть, что запросы послал. –

+0

Почему бы вам не попробовать и не увидеть с помощью инструментов отладки браузера? – j08691

ответ

18

Форма будет отправлена ​​на сервер, и браузер перенаправит ее на текущий адрес браузера и добавит в качестве параметров строки запроса значения полей ввода.

С точки зрения протокола HTTP запрос следующего запроса HTTP GET будет отправлен:

GET http://example.com/?namefield1=value1&namefield2=value2 HTTP/1.1 
Host: example.com 

С вашей <form> отсутствует атрибут action, браузер будет просто перенаправлять к текущему URL путем добавления значения, как параметры строки запроса. Поэтому, если эта форма была загружена с http://example.com/foo.php после ее отправки, браузер перенаправит на http://example.com/foo.php?namefield1=value1&namefield2=value2, где value1 и value2 будут значениями, введенными пользователем в соответствующих полях ввода.

Также вы можете использовать встроенные средства отладки вашего браузера или Fiddler для проверки точной информации, отправляемой на сервер.

+0

Почему 'namefield1' отправляется дважды? – j08691

+0

Это была ошибка. На сервер будут отправлены 2 параметра. –

3

Если вы отправите форму методом «get», то она выполнит запрос получения, отправив данные, хранящиеся в ваших элементах ввода, в строке запроса в виде пары значений имени. Так, например http://example.com/index.html?field1=joe&field2=bloggs

Смотрите пример здесь, если вы прокрутите вниз до Submit например кнопки в нижней части: http://www.w3schools.com/html/html_forms.asp

Смежные вопросы