Forms#
Forms allow the user to interact with the html page. There are a few special html tags to work with forms, these are covered on this page.
Input#
Input line.
type atribute#
Describe a purpose of the input. Can take the following values:
text;
password;
email;
tel;
number;
range;
submit.
The values are discussed in more detail in other sub-sections.
type="text"#
Just basic input.
type="password"#
Used to enter passwords. Symbols change to dots as you type.
%%HTML
<input type="password">
type="email"#
Used to enter an email address. The value is validated to ensure it is a real email address when sumbit button will be pressed.
%%HTML
<form>
<input type="email">
<input type="submit">
</form>
type="tel"#
Used to enter an phone numter. The value is validated ito ensure that it is a telephone number that satisfies the given pattern atribute. The following example dispays using of <input type="tel">. You can check the result here.
display(HTML("<hr>"))
with open("forms_files/input_type_tel.html") as file:
print(file.read())
display(HTML("<hr>"))
<!DOCTYPE html>
<html>
<body>
<h2>Input for phone</h2>
<form>
<label for="phone">Phone number:</label><br>
<input type="tel" id="phone"
pattern="[0-9]{3}-[0-9]{2}-[0-9]{3}"><br><br>
<small>Fomat: 123-45-678</small>
<br><br>
<input type="submit">
</form>
</body>
</html>
type="number"#
Used to enter the number.
Attributes:
minminimum value;maxmaximum value.
In the following example you can play such an element.
%%HTML
<form>
<input type="number" min=3 max=10>
</form>
type="range"#
Creates a slider.
Attributes:
min- describe a minimal value;max- describe a maximum value;step- describe a step of the slider.
%%HTML
<label for="range1">Range1</label><input id="range1" type="range" min=0 max=100 step=0.5><br>
<label for="range2">Range2</label><input id="range2" type="range" min=0 max=5 step = 2>
Label#
It is the text the purpose of which is to sign, some element on the form. The main difference with just the <text> tag is that by clicking on the <label> you will focus on the element whose id was mentioned in the for attribute of the <label>.
You can try this in the following example, by clicking on label for input1 the input line will be activated. But if you click on just random text nothing happen.
%%HTML
<label for="input1">label for input1</label>
<br>
<text>just random text</text>
<br>
<input id="input1">