HTML Forms: The HTML element represents a document section containing interactive controls for submitting information

BINJAD1 16 views 34 slides Aug 21, 2024
Slide 1
Slide 1 of 34
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34

About This Presentation

The HTML element represents a document section containing interactive controls for submitting information.


Slide Content

HTML/XHTML Forms

2 What are forms? <form> is just another kind of XHTML/HTML tag Forms are used to create (rather primitive) GUIs on Web pages Usually the purpose is to ask the user for information The information is then sent back to the server A form is an area that can contain form elements The syntax is: <form parameters > ...form elements... </form> Form elements include: buttons, checkboxes, text fields, radio buttons, drop-down menus, etc Other kinds of tags can be mixed in with the form elements A form usually contains a Submit button to send the information in he form elements to the server The form’s parameters tell JavaScript how to send the information to the server (there are two different ways it could be sent) Forms can be used for other things, such as a GUI for simple programs

3 Forms and JavaScript The JavaScript language can be used to make pages that “do something” You can use JavaScript to write complete programs, but... Usually you just use snippets of JavaScript here and there throughout your Web page JavaScript code snippets can be attached to various form elements For example, you might want to check that a zipcode field contains a 5-digit integer before you send that information to the server Microsoft calls its version of JavaScript “active scripting ” Forms can be used without JavaScript, and JavaScript can be used without forms, but they work well together JavaScript for forms is covered in a separate lecture

4 The <form> tag The <form arguments > ... </form> tag encloses form elements (and probably other elements as well ) The arguments to form tell what to do with the user input action=" url " (required) Specifies where to send the data when the Submit button is clicked method="get" (default) Form data is sent as a URL with ? form_data info appended to the end Can be used only if data is all ASCII and not more than 100 characters method="post" Form data is sent in the body of the URL request Cannot be bookmarked by most browsers target=" target " Tells where to open the page sent as a result of the request target = _blank means open in a new window target = _top means use the same window

5 The <input> tag Most, but not all, form elements use the input tag, with a type="..." argument to tell which kind of element it is type can be text , checkbox , radio , password , hidden , submit , reset , button , file , or image Other common input tag arguments include: name : the name of the element id : a unique identifier for the element value : the “value” of the element; used in different ways for different values of type readonly : the value cannot be changed disabled : the user can’t do anything with this element Other arguments are defined for the input tag but have meaning only for certain values of type

6 Text input A text field: <input type="text" name=" textfield " value="with an initial value" /> A multi-line text field < textarea name=" textarea " cols="24" rows="2">Hello</ textarea > A password field: <input type="password" name="textfield3" value="secret" /> • Note that two of these use the input tag, but one uses textarea

7 Buttons A submit button: <input type="submit" name="Submit" value="Submit" /> A reset button: <input type="reset" name="Submit2" value="Reset" /> A plain button: <input type="button" name="Submit3" value="Push Me" /> submit : send data reset : restore all form elements to their initial state button : take some action as specified by JavaScript • Note that the type is input , not “button”

8 Radio buttons Radio buttons:< br > <input type="radio" name=" radiobutton " value="myValue1" /> male< br > <input type="radio" name=" radiobutton " value="myValue2” checked="checked" />female If two or more radio buttons have the same name , the user can only select one of them at a time This is how you make a radio button “group ” If you ask for the value of that name , you will get the value specified for the selected radio button As with checkboxes, radio buttons do not contain any text

9 Labels In many cases, the labels for controls are not part of the control <input type="radio" name="gender" value="m" />male In this case, clicking on the word “male” has no effect A label tag will bind the text to the control <label><input type="radio" name="gender" value="m" />male</label> Clicking on the word “male” now clicks the radio button w3schools says that you should use the for attribute: <label for=" lname ">Last Name:</label> <input type="text" name=" lastname " id=" lname " /> In my testing (Firefox and Opera), this isn’t necessary, but it may be for some browsers Labels also help page readers read the page correctly Some browsers may render labels differently

10 Checkboxes A checkbox: <input type="checkbox" name="checkbox" value="checkbox" checked="checked"> type : "checkbox" name : used to reference this form element from JavaScript value : value to be returned when element is checked Note that there is no text associated with the checkbox Unless you use a label tag, only clicking on the box itself has any effect

11 Drop-down menu or list A menu or list: <select name="select"> <option value="red">red</option> <option value="green">green</option> <option value="BLUE">blue</option> </select> Additional arguments: size : the number of items visible in the list (default is "1" ) multiple if set to "true" (or just about anything else), any number of items may be selected if omitted, only one item may be selected if set to "false" , behavior depends on the particular browser

12 Hidden fields <input type="hidden" name="hiddenField" value="nyah"> &lt;-- right there, don't you see it? What good is this? All input fields are sent back to the server, including hidden fields This is a way to include information that the user doesn’t need to see (or that you don’t want her to see) The value of a hidden field can be set programmatically (by JavaScript) before the form is submitted

< optgroup > label Attribute 13 Example: Two option-groups with labels: <select>   < optgroup  label="Swedish Cars">     <option value=" volvo ">Volvo</option>     <option value=" saab ">Saab</option>   </ optgroup >   < optgroup  label="German Cars">     <option value=" mercedes ">Mercedes</option>     <option value=" audi ">Audi</option>   </ optgroup > </select>

< fieldset >   and < legend> Tags 14 Example: <form>   < fieldset >     <legend>Personal Details:</legend>     Name: <input type="text">< br >      Email : <input type="text">< br >     Date of birth: <input type="text">   </ fieldset > </form>

<progress>  Tag 15 Example: Downloading in progress: <progress value="22" max="100"></progress>

<meter>   Tag 16 Example: p>Display the Score:</p> <meter value="2" min="0" max="10">2 out of 10</meter>Passing Score< br > <meter value="0.6">60%</meter>Your Score <p><strong>Note:</strong> The meter tag is not supported in Internet Explorer or Safari 5 (and earlier versions).</p>

17 A complete example <html> <head> <title>Get Identity</title> <meta http- equiv ="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <p><b>Who are you?</b></p> <form method="post" action=""> <p>Name: <input type="text" name=" textfield "> </p> <p>Gender: <label><input type="radio" name="gender" value="m" />Male<label> <label><input type="radio" name="gender" value="f" />Female</label> </p> </form> </body> </html>

HTML5 : Form Attributes <input> height and width Attributes The height and width attributes specify the height and width of an <input> element. Note: The height and width attributes are only used with <input type="image">. Example: 18 Define an image as the submit button, with height and width attributes: <input type="image" src ="img_submit.gif" alt="Submit" width="48" height="48">

< input> list Attribute The list attribute refers to a < datalist > element that contains pre-defined options for an <input> element. Example: 19 An <input> element with pre-defined values in a < datalist >: <input list="browsers"> < datalist id="browsers"> <option value="Internet Explorer"> <option value="Firefox"> <option value="Chrome"> <option value="Opera"> <option value="Safari"> </ datalist >

<input> multiple Attribute The multiple attribute is a boolean attribute . When present, it specifies that the user is allowed to enter more than one value in the <input> element . Note:  The multiple attribute works with the following input types: email, and file . Example: A file upload field that accepts multiple values : 20 Select images: <input type="file" name=" img " multiple>

HTML5 : New Input Types HTML5 has several new input types for forms. These new features allow better input control and validation. This chapter covers the new input types: 21 color date datetime datetime -local email month number range search tel time url week

1. Input Type: color The color type is used for input fields that should contain a color. Example: 22 Select a color from a color picker: Select your favorite color: <input type="color" name=" favcolor ">

2. Input Type: date The date type allows the user to select a date . Example: 23 Define a date control: Birthday: <input type="date" name=" bday ">

3. Input Type: datetime The datetime type allows the user to select a date and time (with time zone). Example: 24 Define a date and time control (with time zone): Birthday (date and time): <input type=" datetime " name=" bdaytime ">

4. Input Type: datetime -local The datetime -local type allows the user to select a date and time (no time zone). Example: 25 Define a date and time control (no time zone): Birthday (date and time): <input type=" datetime -local" name=" bdaytime ">

5 . Input Type: email The email type is used for input fields that should contain an e-mail address. Example: 26 Define a field for an e-mail address (will be automatically validated when submitted): E-mail: <input type="email" name="email">

6. Input Type: month The month type allows the user to select a month and year. Example: 27 Define a month and year control (no time zone): Birthday (month and year): <input type="month" name=" bdaymonth ">

7. Input Type: number The number type is used for input fields that should contain a numeric value. You can also set restrictions on what numbers are accepted: Example: Use the following attributes to specify restrictions: max - specifies the maximum value allowed min - specifies the minimum value allowed step - specifies the legal number intervals value - Specifies the default value 28 Define a numeric field (with restrictions): Quantity (between 1 and 5): <input type="number" name="quantity" min="1" max="5">

8. Input Type: range The range type is used for input fields that should contain a value from a range of numbers. You can also set restrictions on what numbers are accepted . Example: Use the following attributes to specify restrictions: max - specifies the maximum value allowed min - specifies the minimum value allowed step - specifies the legal number intervals value - Specifies the default value 29 Define a control for entering a number whose exact value is not important (like a slider control): <input type="range" name="points" min="1" max="10">

9. Input Type: search The search type is used for search fields (a search field behaves like a regular text field). Example: 30 Define a search field (like a site search, or Google search): Search Google: <input type="search" name=" googlesearch ">

10. Input Type: tel The tel type is used for input fields that should contain a telephone number. Example: 31 Define a field for entering a telephone number: Telephone: <input type=" tel " name=" usrtel ">

11. Input Type: time The time type allows the user to select a time. Example: 32 Define a control for entering a time (no time zone): Select a time: <input type="time" name=" usr_time ">

12. Input Type: url The url type is used for input fields that should contain a URL address. The value of the url field is automatically validated when the form is submitted. Example: 33 Define a field for entering a URL: Add your homepage: <input type=" url " name="homepage">

13. Input Type: week The week type allows the user to select a week and year. Example: 34 Define a week and year control (no time zone): Select a week: <input type="week" name=" week_year ">
Tags