HTML форми

Какво са HTML Формите?

Какво са HTML Формите?

Основен елемент от взаимодействието на потребителя със приложението (сайта).
Чрез формите потребителя може да изпраща данни към сървъра. В този случай, се работи с повишено внимание относно сигурността на системата.
Формата може да се използва и за взаимодействие изцяло на Front-End ниво (например, калкулатор и пр.).
Формата се състои от множество компоненти (контроли), като текстови полета, падащи списъци, чек-боксове, бутони.

Елемент form

Елемент form

Контейнер, в който се разполагат елементите на формата


			
Име:
Парола:

Основни атрибути

action
Задава пътя до back-end програмата, която ще обработва данните на сървъра.
method
Задава начина по който ще се изпратят данните. Основните HTTP методи за изпращане на данни са:
  • get - данните ще се "закачат" в самото URL;
  • post - данните се предават в тялото на съобщенето.


Когато чрез формата ще се изпращат конфиденциални данни (като парола), то винаги използвайте method="post"

Допустими елементи във form


			input       textarea        button

			option      optgroup        select

			label       fieldset
		

Елемент input

Елемент input

Създава поле за въвеждане на данни от потребителя

Елемента е празен. Типът му се регулира от атрибута type:



				Text type: 
				Pass type: 
				Checkbox: 
				Radio: 
				File: 
				Color: 
				Submit button: 
				Reset button: 
			
Text type:
Pass type:
Checkbox:
Radio:
File:
Color:
Submit button:
Reset button:

Основни атрибути

autocomplete attribute @w3schools
autofocus attribute @w3schools
checked attribute @w3schools
name attribute @w3schools
placeholder attribute @w3schools

Основни атрибути

readonly attribute @w3schools
required attribute @w3schools
size attribute @w3schools
type attribute @w3schools
value attribute @w3schools

Ролята на name атрибута в елементите на една форма

Ролята на name атрибута в елементите на една форма

От гледна точка на изпращането на данни, чрез name атрибута задаваме име на данните, които ще се асоциират с това поле.
Ако дадено input поле няма дефиниран name атрибут, то няма да се изпратят въведените в него данни към сървъра!

			
Име:
Парола:

Тествайте и погледнете в query string-а на URL какви данни ще се изпратя към сървъра.

Радио-бутони (input type="radio")

Радио-бутони (input type="radio")

За да функционират радио контролите като избор на една от множество алтернативни стойности, то тези input полета трябва да имат една и съша стойност за атрибута name
Стойността, която ще се подаде на сървъра след избора на потребителя, се определя от атрибута value

			
Gender

Елемент input като бутон

Елемент input като бутон

input елемента притежава стойности за атрибута type: submit, reset и button, които имат същото значение и ефект, както при button елемента

			
			
			
		

Вероятно бихте предпочели да използвате елемента button, когато искате да сложите бутон.

Елемент button

Елемент button

http://www.w3schools.com/tags/tag_button.asp


			
			

			
			

			
			
		

Елемент label

Елемент label

http://www.w3schools.com/tags/tag_label.asp

Use case:

Gender:

Елементи fieldset & legend

Елементи fieldset & legend

http://www.w3schools.com/tags/tag_fieldset.asp http://www.w3schools.com/tags/tag_legend.asp

Елементи select, option и optgroup

Елементи select, option и optgroup

http://www.w3schools.com/tags/tag_select.asp
http://www.w3schools.com/tags/tag_option.asp
http://www.w3schools.com/tags/tag_optgroup.asp

Атрибута multiple върху select

Атрибута multiple върху select

АКо желаем потребителя да има възможност да избере няколко опции от select елемент, то трябва да добавим атрибута multiple


			
		

Елемент textarea

Елемент textarea

http://www.w3schools.com/tags/tag_textarea.asp

Упражнения

Упражнения

Задача 1: simpleFormControls

simpleFormControls

These slides are based on

customised version of

Hakimel's reveal.js

framework