Presentation is loading. Please wait.

Presentation is loading. Please wait.

JavaScript Forms Form Validation Cookies CGI Programs.

Similar presentations

Presentation on theme: "JavaScript Forms Form Validation Cookies CGI Programs."— Presentation transcript:

1 JavaScript Forms Form Validation Cookies CGI Programs

2 What JavaScript can do  Control document appearance and content  Control the browser  Interact with user  Interact with forms  Validate user input  Use cookies

3 HTML Forms  is a block-level element in the body of your HTML page  A form element can contain text input boxes, buttons, checkboxes, pull-down menus and images  Your document can have multiple form elements  A special button called Submit is used to send the form data to the server

4 JavaScript and Forms  With a server-side program, an HTML form needs a submit button  With JavaScript, you can react to events of individual input elements.  For some types of tasks, you may never need to submit at all.

5 Form Objects  An HTML form is represented in JavaScript by a Form object  document.forms[] is an array containing all the forms in the document  Each form object has an elements[] attribute which is an array of input elements document.forms[i].elements[j]  A name attribute in the tag allows you to access the elements by name

6 Form Objects  Form methods include submit() and reset()  Submit and Reset buttons trigger onsubmit and onreset respectively  onsubmit and onreset handlers invoked just before corresponding method is called  If a handler returns false, the corresponding submit() or reset() method will not be invoked

7 Form Elements  Use the tag to create controls  type="input-type" needed to specify which type of control  name attribute needed to identify the element  There are special tags for, and

8 Form Elements and Events ObjectHTMLEvents Button onclick Checkbox onclick Radio onclick Select onchange Option - belongs to Select object Text onchange Password(input type="password">onchange Textarea onchange

9 Form Elements and Events ObjectHTMLEvents FileUpload onchange Hidden none Reset onclick Submit onclick

10 Names in Forms  If a form is to be submitted to a server side program, the name attribute of every element must be set  Within the javascript code, you can use the name of a form or form element instead of indexing into the corresponding array  For the form defined by  …  document.everything and document.forms[0] are equivalent ways to refer to the form

11 Properties of Form Elements  type - read only  form - read only reference to form element is part of  name - name that can be used to refer to the element  value - string sent to web server on submission  text entered by user for text and textarea  text displayed on a button  string set in HTML code for radio and chechbox

12 Event Handlers for Form Elements  onclick - triggered by mouse click  onchange - triggered by changing a value  onfocus - triggered when element receives focus  onblur - triggered when element loses focus

13 Validation  Check that all required fields have data e.value==null || e.value==""  Check the format of fields that contain information like email addresses, URLs, phone numbers, …  Use the RegExp class to create patterns var pattern = /(\d{3}) \d{3}-\d{4}/  Use an alert to display error messages

14 Cookies  A cookie is a small amount of named data stored by the browser and associated with a particular web site  provide a way of saving state of a web page  last for current session by default  Server-side programs use cookies  JavaScript can manipulate cookie data

15 Cookie Attributes  name - each cookie has a name  value - value associated with the cookie  expires - cookies are transient unless this is set  path - web page(s) with which cookie is associated  domain - allows cookie to be available to different web servers  secure - Boolean attribute that specifies whether cookies must be transmitted over a secure (https) connection

16 Storing Cookies  Creating a transient cookie document.cookie = "version=" + escape( document.lastModified);  escape encodes characters that aren't allowed in the cookie  Storing other attributes with a cookie  Use semicolon to separate attribute=value pairs document.cookie = "version=" + escape(document.lastModified) + "; expires=" + nextYear.toGMTString();

17 Reading Cookies  document.cookie returns a string containing all the cookies for the document.  name=value pairs separated by semicolons  value does not include attributes

18 CGI Programs  Common Gateway Interface  A protocol for interfacing external programs to a web server  Environment variables are used to store information that needs to be passed from the web server to the CGI program which runs as a separate process.

19 Environment Variables NameValue DOCUMENT_ROOTroot directory of server HTTP_COOKIEcookie data REQUEST_METHODPOST or GET QUERY_STRINGform data passed to program

20 Request Method POST  more secure  data is sent to the program as an input stream (STDIN) GET  data is encoded into the URL that accesses the cgi program  data is stored in the QUERY_STRING environment variable data format is name=value&name=value&name=value

21 URL Encoding  Letters and digits are left alone  Spaces become +  All other characters are replaced by %hh where hh is the hexadecimal ASCII code

22 cgi programs on onyx  On onyx, you need to put your CGI programs into a directory called cgi-bin which is under your public_html directory  Programs need to have the.cgi extension  Programs need to be executable

Download ppt "JavaScript Forms Form Validation Cookies CGI Programs."

Similar presentations

Ads by Google