Internet protocol second unit IIPPT.pptx

ssuser92282c 14 views 134 slides Jul 01, 2024
Slide 1
Slide 1 of 134
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
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68
Slide 69
69
Slide 70
70
Slide 71
71
Slide 72
72
Slide 73
73
Slide 74
74
Slide 75
75
Slide 76
76
Slide 77
77
Slide 78
78
Slide 79
79
Slide 80
80
Slide 81
81
Slide 82
82
Slide 83
83
Slide 84
84
Slide 85
85
Slide 86
86
Slide 87
87
Slide 88
88
Slide 89
89
Slide 90
90
Slide 91
91
Slide 92
92
Slide 93
93
Slide 94
94
Slide 95
95
Slide 96
96
Slide 97
97
Slide 98
98
Slide 99
99
Slide 100
100
Slide 101
101
Slide 102
102
Slide 103
103
Slide 104
104
Slide 105
105
Slide 106
106
Slide 107
107
Slide 108
108
Slide 109
109
Slide 110
110
Slide 111
111
Slide 112
112
Slide 113
113
Slide 114
114
Slide 115
115
Slide 116
116
Slide 117
117
Slide 118
118
Slide 119
119
Slide 120
120
Slide 121
121
Slide 122
122
Slide 123
123
Slide 124
124
Slide 125
125
Slide 126
126
Slide 127
127
Slide 128
128
Slide 129
129
Slide 130
130
Slide 131
131
Slide 132
132
Slide 133
133
Slide 134
134

About This Presentation

IP


Slide Content

20CS4104 INTERNET PROGRAMMING UNIT II CLIENT SIDE PROGRAMMING Java Script: An introduction to JavaScript–JavaScript DOM Model-Date and Objects,-Regular Expressions- Exception Handling-Validation-Built-in objects-Event Handling- DHTML with JavaScript JSON introduction – Syntax – Function Files – Http Request – SQL. AJAX- Ajax Client Server Architecture-XML Http Request Object-Call Back Methods.

COURSE OUTCOMES (CO) CO 1 Students will be able to construct a basic website using HTML and Cascading Style Sheets. CO 2 Students will be able to build dynamic web page with validation using Java Script objects and by applying different event handling mechanisms. CO 3 To learn Server-side programs using Servlets and JSP with Database connection. CO 4 To implement server-side programming and build web applications using PHP. CO 5 To understand the concept of server-side framework Node JS and Angular JS COURSE OBJECTIVES 1 . To validate and manipulate the contents of the webpage using JavaScript and DOM

UNIT II CLIENT SIDE PROGRAMMING Session # Topic 1 An introduction to JavaScript, JavaScript DOM Model 2 Date and Objects - Regular Expressions 3 Exception Handling-Validation-Built-in objects 4 Event Handling- DHTML with JavaScript 5 JSON introduction – Syntax , Function Files 6 Http Request, SQL 7 AJAX: Ajax Client Server Architecture- 8 XML Http Request Object 9 Call Back Methods Course Delivery Plan

Java Script An introduction to JavaScript JavaScript DOM Model Date and Objects Regular Expressions Exception Handling Validation Built-in objects Event Handling DHTML with JavaScript

5 Introduction to JavaScript JavaScript is an interpreted programming or script language JavaScript  was invented by  Brendan Eich  in 1995 at Netscape 2. JavaScript programs are run by an interpreter built into the user's web browser (not on the server) Client side scripting

What is JavaScript? JavaScript was designed to add interactivity to HTML pages JavaScript is a scripting language A JavaScript consists of lines of executable computer code A JavaScript is usually embedded directly into HTML pages JavaScript is an interpreted language Everyone can use JavaScript without purchasing a license

What can a JavaScript Do? JavaScript gives HTML designers a programming tool JavaScript can put dynamic text into an HTML page JavaScript can react to event JavaScript can read and write HTML elements JavaScript can be used to validate data JavaScript can be used to detect the visitor's browser JavaScript can be used to create cookies

8 Java vs. JavaScript Requires the JDK to create the applet Requires a Java virtual machine to run the applet Applet files are distinct from the XHTML code Source code is hidden from the user Programs must be saved as separate files and compiled before they can be run Programs run on the server side Requires a text editor Required a browser that can interpret JavaScript code JavaScript can be placed within HTML and XHTML Source code is made accessible to the user Programs cannot write content to the hard disk Programs run on the client side

Event-driven programming 9 split breaks apart a string into an array using a delimiter can also be used with regular expressions (seen later) join merges an array into a single string, placing a delimiter between them

Event-driven Programming 10 JavaScript programs wait for user actions called events and respond to them E vent-driven P rogramming : writing programs driven by user events

11 Javascript Syntax To embed a client-side script in a Web page, use the element: <script> script commands and comments </script> To access an external script, use: <script src =“ url ” > script commands and comments </script>

Javascript Syntax <script> statement-1; statement-2; …. statement-n; </script>

Where to Put the JavaScript <head> section Save file with extension .html <body> section Save file with extension .html External scripts Save file with extension . js

JavaScript in the <head> section <html> <head> <title>Java Script Example</title> <script> alert("Hello World!"); </script > </head> <body> </body> </html>

Scripts in the < body > section <html> <head> <title>Java Script Example</title> </head> <body> <script> alert("Hello World1"); </script > </body> </html>

Using External JavaScript <html> < head> < script s rc=“ extfile .js "> </script> </ head> < body> </ body> </html > extfile.js alert("Hello"); alert (“Welcome to Javascript ”); alert (“Have a nice day!”);

17 Comments The syntax for a single-line comment is: // comment text The syntax of a multi-line comment is: /* comment text covering several lines */

18 Writing Output to a Web Page JavaScript displays data in the following ways: document.write () or document.writeln () window.alert () or alert() innerHTML

19 Types of Variables JavaScript supports Four different types of variables: Numeric variables can be a number 13, 22.5, or -3.14159 String variables is any group of characters “Hello” or “Happy Holidays!” Boolean variables are variables that accept one of two values true or false null variables is a variable that has no value at all

20 Declaring a Variable Declare a variable using the var keyword or by assigning the variable a value Any of the following commands is a legitimate way of creating a variable named “Month”: var Month; var Month = “December”; var age=20;

Javascript Functions Syntax function name() { statement ; statement ; ... statement ; } Example <script> function MyFunction () { alert("Hello!"); alert("How are you?"); } </script>

JavaScript DOM Model What is DOM? The Document Object Model (DOM) is a programming API for HTML and XML documents. It defines the logical structure of documents and the way a document is accessed and manipulated . With the Document Object Model, programmers can create and build documents, navigate their structure, and add, modify, or delete elements and content 22

23 Nodes Organise the Page <html> <head> <title>My page</title> </head> <body> < p>This text is on my page</p> </body> </html>

24 What is a Node? Element Node – contains an HTML tag Text Node – contains text Text Nodes are contained in Element Nodes

DOM Methods document.createElement () document.createTextNode () appendChild () removeChild () document.getElementById () document.getElementsByTagName () document.getElementsByClassName () getAttribute () setAttribute () innerHTML 25

26 Adding Some Text to a Page There are five steps: Create a new Element Create new Text Append the new Text to the new Element Find an existing Element Append the new Element to the existing Element

27 1. Create New Element Node Create a new <p> tag (element) so that we can attach some text to it Put the new object into a variable var newNode ; newNode = document.createElement (“p ”);

28 2. Create a Text Node Create a text node Put the new text node into a variable var newText ; newText = document.createTextNode (“Some text”);

29 3. Attach the New Text Node to the New Element To put the text into the page, we have to attach the text node to the new HTML element : newNode.appendChild ( newText );

30 4.Find an Existing Element The new element with our text node attached to it is still floating around in a Javascript world. Assign this existing element to a variable var docElement ; docElement = document.getElementById (“ thisLocation ”);

31 5. Append the New Element to the Existing Element To insert our text into the page, we now have to append the new element to the existing element docElement.appendChild ( newNode );

32 Putting the 5 Steps Together <html> < head> < script> var myText ; myText = "This is new text to be added to the page dynamically."; function addText (location) { var newNode ; var newText ; var docElement ; newNode = document.createElement ("p"); newText = document.createTextNode ( myText ); newNode.appendChild ( newText ); docElement = document.getElementById (location); docElement.appendChild ( newNode ); } </script> </head> <body> <p > < a href ="#" onclick =" addText (' thisLocation ');" >Click to add new text to the page</a></p> <p id=" thisLocation ">New text will appear below here</p> <p>Some further text in the page</p> </body > </html>

33 Remove a Node To remove a node, we use the element method removeChild ( name of node to be removed ) For example: function remText (location) { var docElement ; docElement = document.getElementById (location); docElement.removeChild ( docElement.lastChild ); }

Javascript Built-in objects

35 Date Object There are four ways to create a date object var -name = new Date() var -name = new Date( year, month, day, hours, minutes, seconds, milliseconds ) var -name = new Date( milliseconds ) var -name = new Date( date string ) var -name is the name of the variable that contains the date information month , day , year , hours , minutes , and seconds indicate the date and time Example: var Today=new Date(“October 15, 2006”); var Today=new Date(2006, 9 , 15);

Date Object and Methods Date object can be used to access the date and time, and to perform "date arithmetic" To get and set current Date and Time today = new Date (); new Year = new Date(2002,0,1); Methods of Date object Date()  - Returns today's date and time getDate ()  - Returns the day of the month for the specified date getDay ()  - Returns the day of the week for the specified date getFullYear ()  - Returns the year of the specified date getHours ()  - Returns the hour in the specified date according to local time. getMilliseconds ()  - Returns the milliseconds in the specified date according to local time. 36

<!DOCTYPE html> <html> <head> <title>Date Object Example</title> </head> <body> <pre> <script> d=new Date(); document.writeln (d); document.writeln (" getDate () return:"+ d.getDate ()); document.writeln (" getDay () returns:"+ d.getDay ()); document.writeln (" getFullYear () returns:"+ d.getFullYear ()); document.writeln (" getHours () returns:"+ d.getHours ()); document.writeln (" getMinutes () returns:"+ d.getMinutes ()); document.writeln (" getSeconds () returns:"+ d.getSeconds ()); document.writeln (" getMilliseconds () returns:"+ d.getMilliseconds ()); </script> </pre> </body> </html>

Array Object Multiple values are stored in a single variable using the Array object. In JavaScript, an array can hold different types of data types in a single slot, which implies that an array can have a string, a number or an object in a single slot. An Array object can be created by using following ways: Using the Array Constructor Using the Array Literal Notation

Array Object Using the Array Constructor: To create empty array when don’t know the exact number of elements to be inserted in an array var arrayname = new Array(); To create an array of given size var arrayname = new Array(size); To create an array with given elements var arrayname = new Array(“element 1”,”element 2”,……..,”element n”);

Array Object Using the Array Literal Notation: To create empty array var arrayname =[ ]; To create an array when elements are given var arrayname =[“element 1”,”element 2”,……..,”element n”];

Array Object Properties of the Array object length  - Returns the number of elements in the array Constructor  - Returns the function that created the Array object Prototype  - Add properties and methods to an object Methods of the Array object reverse()  - Reverses the array elements concat ()  - Joins two or more arrays sort()  - Sort the elements of an array push()  - Appends one or more elements at the end of an array pop()  - Removes and returns the last element shift()  - Removes and returns the first element

Array Object Example-1 <!DOCTYPE html> <html> <head> <title>Array Object Example</title> </head> <body> <pre> <script> a=new Array(3); a.push (10); a.push (20); a.push (30); document.writeln (a.pop()); document.writeln (a.pop()); document.writeln (a.pop()); </script> </pre> </body> </html>

Array Object Example-2 <!DOCTYPE html> <html> <head> <title>Array Object Example</title> </head> <body> <pre> <script> a=new Array(3); b=[' aaa','bbb','ccc '] a[0]=10; a[1]=20; a[2]=30; document.writeln (a[0]); document.writeln (a[1]); document.writeln (a[2]); document.writeln (b[2]); </script> </pre> </body> </html>

Array Object Example-3 <!DOCTYPE html> <html> <head> <title>Array Example-2</title> <script> function book(title, author) { this.title = title; this.author = author; } </script> </head> <body> <script> var myBook = new book("Perl", “ Ramesh "); book.prototype.price = null; myBook.price = 100; document.write ("Book title is : " + myBook.title + "< br >"); document.write ("Book author is : " + myBook.author + "< br >"); document.write ("Book price is : " + myBook.price + "< br >"); </script> </body> </html>

Array Object Example-3 <!DOCTYPE html> <html> <head> <title>Array Object Example - Methods and Properties</title> </head> <body> <pre> <script> a=new Array(3); a.push (10); a.push (30); a.push (20); document.writeln (a.pop()); document.writeln (a.pop()); document.writeln (a.pop()); b=[20,10,15]; document.writeln ("Before Sorting:"+b); b.sort (); document.writeln ("After Sorting:"+b); document.writeln ("Length:"+ b.length ); document.writeln ("Constructor:"+ b.constructor ); document.writeln ( b.shift ()); alpha = ["a", "b", "c"]; numeric = [1, 2, 3]; alphaNumeric = alpha.concat (numeric); document.writeln (" alphaNumeric : " + alphaNumeric ); document.writeln ("Reverse of alpha: " + alpha.reverse ()); </script> </pre> </body> </html>

Math Object The JavaScript Math object is used to perform mathematical tasks. The Math object is a static built-in object, so no need to instantiate it, all its properties and methods can be accessed directly. Math Properties (Constants) The syntax for any Math property is :  Math. property . Math Methods The syntax for Math any methods is :  Math. method ( number )

Math Object Example <!DOCTYPE html> <html> <head> <title>Math Object Example</title> </head> <body> <pre> <script> document.writeln ("PI="+ Math.PI ); document.writeln ("3 to the Power of 2="+Math.pow(3,2)); </script> </pre> </body> </html>

Math Properties Property Description E Returns Euler's number, the base of natural logarithms, e, approximately 2.718 LN2 Returns the natural logarithm of 2, approximately 0.693 LN10 Returns the natural logarithm of 10, approximately 2.302 LOG2E Returns the base 2 logarithm of e, approximately 1.442 LOG10E Returns the base 10 logarithm of e, approximately 0.434 PI Returns the ratio of the circumference of a circle to its diameter (i.e. π). The approximate value of PI is 3.14159 SQRT1_2 Returns the square root of 1/2, approximately 0.707 SQRT2 Returns the square root of 2, approximately 1.414

Math Methods Method Description abs() Returns the absolute value of a number. acos() Returns the arccosine of a number, in radians. acosh() Returns the hyperbolic arccosine of a number. asin() Returns the arcsine of a number, in radians asinh() Returns the hyperbolic arcsine of a number. atan() Returns the arctangent of a number, in radians. atan2(y, x) Returns the arctangent of the quotient of its arguments. atanh() Returns the hyperbolic arctangent of a number. cbrt() Returns the cube root of a number. ceil() Returns the next integer greater than or equal to a given number (rounding up).

Math Methods(cont..) Method Description cos () Returns the cosine of the specified angle. The angle must be specified in radians. cosh() Returns the hyperbolic cosine of a number. exp(x) Returns e x , where x is the argument, and e is Euler's number (also known as Napier's constant), the base of the natural logarithms. floor() Returns the next integer less than or equal to a given number (rounding down). log() Returns the natural logarithm (base e) of a number. max(x, y, ...) Returns the highest-valued number in a list of numbers. min(x, y, ...) Returns the lowest-valued number in a list of numbers. pow(x, y) Returns the base to the exponent power, that is,  x y .

Math Methods(cont..) Method Description random() Returns a random number between 0 and 1 (including 0, but not 1). round() Returns the value of a number rounded to the nearest integer. sin() Returns the sign of a number (given in radians). sinh() Returns the hyperbolic sine of a number. sqrt() Returns the square root of a number. tan() Returns the tangent of a number. tanh() Returns the hyperbolic tangent of a number. trunc(x) Returns the integer part of a number by removing any fractional digits.

JavaScript String A JavaScript string is zero or more characters written inside quotes. Example let text = "John Doe";

JS String Object String Properties Property Description constructor Returns the string's constructor function length Returns the length of a string prototype Allows you to add properties and methods to an object

JS String Object String Methods Method Description charAt () Returns the character at the specified index (position) charCodeAt () Returns the Unicode of the character at the specified index concat () Joins two or more strings, and returns a new joined strings endsWith () Checks whether a string ends with specified string/characters fromCharCode () Converts Unicode values to characters includes() Checks whether a string contains the specified string/characters indexOf () Returns the position of the first found occurrence of a specified value in a string lastIndexOf () Returns the position of the last found occurrence of a specified value in a string localeCompare () Compares two strings in the current locale match() Searches a string for a match against a regular expression, and returns the matches repeat() Returns a new string with a specified number of copies of an existing string replace() Searches a string for a specified value, or a regular expression, and returns a new string where the specified values are replaced

JS String Object String Methods Method Description search() Searches a string for a specified value, or regular expression, and returns the position of the match slice() Extracts a part of a string and returns a new string split() Splits a string into an array of substrings startsWith () Checks whether a string begins with specified characters substr () Extracts the characters from a string, beginning at a specified start position, and through the specified number of character substring() Extracts the characters from a string, between two specified indices toLocaleLowerCase () Converts a string to lowercase letters, according to the host's locale toLocaleUpperCase () Converts a string to uppercase letters, according to the host's locale toLowerCase () Converts a string to lowercase letters toUpperCase () Converts a string to uppercase letters trim() Removes whitespace from both ends of a string valueOf () Returns the primitive value of a String object

JS String Object <!DOCTYPE html> <html> <head> <title>String Object Example</title> </head> <body> <script> msg ="Welcome to Javascript "; document.writeln ("String Length:"+ msg.length ); document.writeln ("< br >Position of script:"+ msg.search ("script")); document.writeln ("< br >String Before Replace:"+ msg ); document.writeln ("< br >String After Replace:"+ msg.replace (" Java","Perl ")); </script> </body> </html>

JavaScript Objects JavaScript objects are containers for  named values  called properties or methods Objects are variables too But objects can contain many values

JavaScript Objects Creating Object var  person = { firstName :"John", lastName :"Doe", age:50 , eyeColor :" blue“, fullName:function () { return this.firstName + “ “ + this.lastName ;} }; Accessing Object Methods and Properties var name= person.fullName (); var myAge = person.age ;

JS Object Example

Regular Expressions A regular expression is a sequence of characters that forms a search pattern The search pattern can be used for text search and text replace operations When you search for data in a text, you can use this search pattern to describe what you are searching for A regular expression can be a single character, or a more complicated pattern Regular expressions can be used to perform all types of  text search  and  text replace  operations

Regular Expressions Components: Modifiers Patterns Meta characters Quantifiers Objects

Regular Expressions Syntax: / pattern / modifiers ; new RegExp (“pattern”) Example: var patt = / cse /i; Modifiers Modifier Description i Perform case-insensitive matching g Perform a global match (find all matches rather than stopping after the first match) m Perform multiline matching

Regular Expressions Patterns Expression Description [ abc ] Find any character between the brackets [^ abc ] Find any character NOT between the brackets [0-9] Find any character between the brackets (any digit) [^0-9] Find any character NOT between the brackets (any non-digit) ( x|y ) Find any of the alternatives specified

Regular Expressions Metacharacters Metacharacter Description . Find a single character, except newline or line terminator \w Find a word character \W Find a non-word character \d Find a digit \D Find a non-digit character \s Find a whitespace character \S Find a non-whitespace character \b Find a match at the beginning/end of a word \B Find a match, but not at the beginning/end of a word \0 Find a NUL character \n Find a new line character \f Find a form feed character \r Find a carriage return character \t Find a tab character \v Find a vertical tab character

Regular Expressions Quantifiers Quantifier Description n+ Matches any string that contains at least one  n n* Matches any string that contains zero or more occurrences of  n n? Matches any string that contains zero or one occurrences of  n n{X} Matches any string that contains a sequence of  X   n 's n{X,Y} Matches any string that contains a sequence of X to Y  n 's n{X,} Matches any string that contains a sequence of at least X  n 's n$ Matches any string with  n  at the end of it ^n Matches any string with  n  at the beginning of it ?=n Matches any string that is followed by a specific string  n ?!n Matches any string that is not followed by a specific string  n

Regular Expressions RegExp Object Methods Method Description exec() Tests for a match in a string. Returns the first match test() Tests for a match in a string. Returns true or false toString () The toString () method returns the string value of the regular expression.

Exception Handling Run time errors are exceptions and this exception is correct by the help of the try and catch method Syntax: < script>           try            {             // Here the main Code run            }           catch ( exception e )            {              // The code will run when there is an exception             }  </ script>

<!DOCTYPE html> <html> < head> < title>JS Exception Handling Example</title> </ head> < body> < p>Please input a number between 5 and 10:</p> < input id="demo" type="text"> < button type=" button”onclick =" myFunction ()"> Test Input</button> < p id="p01"></p> <script> function myFunction () { var message, x; message = document.getElementById ("p01"); message.innerHTML = ""; x = document.getElementById ("demo").value ; try { if(x == "") throw "empty"; if( isNaN (x )) throw "not a number"; x = Number(x); if(x < 5) throw "too low"; if(x > 10) throw "too high"; } catch(err) { message.innerHTML = "Input is " + err; } } </script> </ body> </html > Exception Handling Example

Event Handling Introduction Events are actions or occurrences that happen in the system, which the system tells you about so you can respond to them in some way if desired Javascript has events to provide a dynamic interface to a webpage These events are hooked to elements in the Document Object Model(DOM ) For example, if the user clicks a button on a webpage, you might want to respond to that action by displaying an information box

Event Handling Example Events: The user clicking the mouse over a certain element or hovering the cursor over a certain element The user pressing a key on the keyboard The user resizing or closing the browser window A web page finishing loading A form being submitted A video being played , or paused, or finishing play An error occurring

HTML Events Event When it occurs onsubmit It is triggered when the user clicks a button after the submission of a form. onclick It occurs or triggers when any user clicks on an HTML element. onmouseover It occurs when a user moves the cursor over an HTML object. onmouseout It occurs or triggers when the mouse pointer is moved out of an HTML element. onmousedown It occurs when a user presses the button of a mouse over an HTML element. onmousemove It occurs when a user moves the cursor on an HTML object. onmouseup It occurs or triggers when the mouse button is released over an HTML element. onload It occurs when an object is completely loaded. onblur It occurs when the user leaves an HTML object. onfocus It occurs when the user focuses on an HTML element. This event handler works opposite to onblur .

HTML Events Event When it occurs ondblclick It occurs when the user clicks on an HTML element two times together. onchange It occurs when the user changes or updates the value of an object. onkeydown It triggers when a user is pressing a key on a keyboard device. This event handler works for all the keys. onkeypress It triggers when the users press a key on a keyboard. This event handler is not triggered for all the keys. onkeyup It occurs when a user released a key from a keyboard after pressing on an object or element. onload It occurs when an object is completely loaded. onreset It is used by the user to reset the form. onselect It occurs after selecting the content or text on a web page. onunload It is triggered when the user closes a web page. onabort It occurs when the user aborts the page or media file loading.

Event Handling Event Handler It is a function that’s called when an event occurs to respond to any event multiple handlers for the same event can be registered, and they will all be called when that event happens . JavaScript offer three ways to register an event handler : Inline event handlers DOM on-event handlers Using  addEventListener ()

JS Events Event Description onchange An HTML element has been changed onclick The user clicks an HTML element onmouseover The user moves the mouse over an HTML element onmouseout The user moves the mouse away from an HTML element onkeydown The user pushes a keyboard key onload The browser has finished loading the page

Inline Event Handler <!DOCTYPE html> <html> <head> <title>JS Inline Event Example</title> </head> <body> <button onclick ="alert('Hello, this is inline event handler!');"> Press me </button> </body> </html>

DOM on-event handlers <!DOCTYPE html> <html> <head> <title>JS DOM on-event Example</title> </head> <body> <button onclick =" sayHello ();"> Press me </button> <p id="event"></p> <script> function sayHello () { document.getElementById ("event"). innerHTML ="Hello"; } </script> </body> </html>

Using  addEventListener () <!DOCTYPE html> <html> <head> <title>JS DOM-online Event Example</title> </head> <body> < button>Press me</ button> <p id="event"></p> <script> const btn = document.querySelector ('button'); function sayHello () { document.getElementById ("event"). innerHTML ="Hello"; } btn.addEventListener ('click', sayHello ); </script> </body> </html>

Form Validation <!DOCTYPE html> <html> <head> <title>Form Validation</title> <script> function myFunction () { x = document.getElementById ("age").value; if ( isNaN (x) || x < 1 || x > 120) { text = "Invalid Age"; } else { text = "Input OK"; } document.getElementById ("status"). innerHTML = text; } </script> </head> <body> <p>Please Enter Your Age: <input id="age"> <button type="button" onclick ="myFunction1()">Submit</button></p> <p id="status"></p> </body> </html>

Form Validation <!DOCTYPE html> <html> <head> <title>Form Validation</title> <script> function myFunction () { // var x, text; x = document.getElementById (" aadhar ").value; if ( isNaN (x) || x.length != 12) { text = "Invalid Number"; } else { text = "Input OK"; } document.getElementById ("status"). innerHTML = text; } </script> </head> <body> <p>Please Enter Your Aadhar Number: <input id=" aadhar "> <button type="button" onclick =" myFunction ()">Submit</button></p> <p id="status"></p> </body> </html>

DHTML Dynamic HyerText Markup Language (DHTML) is a combination of Web development technologies used to create dynamically changing websites. Web pages may include animation, dynamic menus and text effects. HTML + JavaScript + CSS + DOM

DHTML Features Dynamic content, which allows the user to dynamically change Web page content Dynamic positioning of Web page elements Dynamic style, which allows the user to change the Web page’s color, font, size or content

Difference between HTML and DHTML TML (Hypertext Markup language) DHTML (Dynamic Hypertext Markup language) 1. HTML is simply a markup language. 1. DHTML is not a language, but it is a set of technologies of web development. 2. It is used for developing and creating web pages. 2. It is used for creating and designing the animated and interactive web sites or pages. 3. This markup language creates static web pages. 3. This concept creates dynamic web pages. 4. It does not contain any server-side scripting code. 4. It may contain the code of server-side scripting. 5. The files of HTML are stored with the .html or .htm extension in a system. 5. The files of DHTML are stored with the .dhtm extension in a system. 6. A simple page which is created by a user without using the scripts or styles called as an HTML page. 6. A page which is created by a user using the HTML, CSS, DOM, and JavaScript technologies called a DHTML page. 7. This markup language does not need database connectivity. 7. This concept needs database connectivity because it interacts with users.

JSON J ava S cript O bject N otation An open standard file format, and data interchange format, Uses human-readable text to store and transmit data objects consisting of attribute–value pairs and array data types. It is a very common data format, with a diverse range of applications, such as serving as a replacement for XML in AJAX systems . 

JSON JSON is commonly used to exchange information between web clients and web servers. 

JSON  a lightweight data-interchange format It is easy for humans to read and write It is easy for machines to parse and generate It is based on a subset of the JavaScript Programming Language Standard JSON is a text format that is completely language independent

JSON JSON is built on two structures: A collection of name/value pairs.  object , record, struct , dictionary, hash table, keyed list, or associative array An ordered list of values. array , vector, list, or sequence

JSON Syntax JSON Syntax Rules Data is in name/value pairs ":" to separate name from value "," to separate name-value pairs "{" and "}" for objects "[" and "]" for arrays Syntax: { "name" : "value“, "name" : "value“ }

JSON Object Example A JSON object is a key-value data format that is typically rendered in curly braces. {   "color" : "Purple",   "id" : "210",   "composition" : {"R" : 70,"G" : 39,"B" : 89} }

JSON Array Example Data can also be nested within the JSON by using JavaScript arrays that are passed as a value using square brackets [ ] on either end of its array type. {     "colors" :     [         { "color" : "Purple",  "id" : "210” },         { "color" : "Blue", "id" : "211”},         { "color" : "Black", "id" : "212” }     ] }

JSON Data Types  JSON consist of 6 data types simple data types string number boolean null/empty complex data types object array

JSON Example {   "color" : "Purple“, “id" : 210, "visibility" : true,   "popularity" : null }

JSON parse() JSON parse()  method  deserializes a JSON string representation to a JavaScript object The parse() method takes the JSON string, as received from API response and converts it a JavaScript object Example: var jsonString = '{ "x": 5, "y": 6 }';   var obj = JSON.parse ( jsonString );   console.log( obj );

JSON stringify () The  JSON.stringify ()  function converts a JavaScript value to a serialized JSON string. In other words, JSON.stringify () returns a JSON string corresponding to a JavaScript object.

<!DOCTYPE html> <html> <head> <title> Stringfy () Example</title> </head> <body> <div id="json1"></div> <div id="json2"></div> <script> var obj = { "fruit": "Apple", "types": ["Small", "Medium", "Large"], "quantity": 1000 }; var json_string = JSON.stringify ( obj ); document.getElementById ("json1"). innerHTML = json_string ; try { var obj = JSON.parse ( json_string ); document.getElementById ("json2"). innerHTML = obj.fruit + ", [" + obj.types + "], " + obj.quantity ; } catch (e) { alert("Cannot parse given string"); } </script> </body> </html>

JSON Function Files Create an array of objects in external js file Create a JavaScript function with same name as external javascript file having array of json objects to display the array.  Use an array literal as the argument Add the external script

JSON Function Files <!DOCTYPE html> <html> <body> <div id="content"></div> <script> function myFunction ( arr ) { var out=""; for( i = 0; i < arr.length ; i ++) { out += arr [ i ].name +" "+ arr [ i ].department+"< br >"; } document.getElementById ("content"). innerHTML = out; } </script> <script src ="myjson.js"></script> </body> </html> myFunction ([ { "name": " Madan ", "department": " cse " }, { "name": "Suresh", "department": " ece " }, { "name": " Muthu ", "department": " eee " }, ]); myjson.js

JSON  HttpRequest

JSON  HttpRequest <!DOCTYPE html> <html> <head> <title>JSON HttpRequest Example</title> </head> <body> <h2>JSON HttpRequest Example</h2> <button type="button" onclick =" readJSON ()">Show JSON</button> <p id=" jsonstring "></p> <script> function readJSON () { var xhttp = new XMLHttpRequest (); xhttp.onreadystatechange = function() { if ( this.readyState == 4 && this.status == 200) { document.getElementById (" jsonstring "). innerHTML = this.responseText ; } }; xhttp.open ("GET", "student1.json", true); xhttp.send (); } </script> </body> </html> [ { "name": " Madan ", "department": " cse " }, { "name": "Suresh", "department": " ece " }, { "name": " Muthu ", "department": " eee " }, ]); student1.json

INTRODUCTION TO AJAX Ajax Client Server Architecture XML Http Request Object Call Back Methods

AJAX AJAX   ("Asynchronous  JavaScript and XML ") is a set of web development techniques using many web technologies on the client side to create asynchronous web applications With Ajax, web applications can send and retrieve data from a server asynchronously (in the background) without interfering with the display and behavior of the existing page

What is AJAX? "Asynchronous JavaScript and XML" JavaScript + DHTML + CSS + XMLHttpRequest Use JavaScript asynchronously behind the scenes to load additional data (typically XML) without discarding and reloading the entire Web page. creating “better, faster, more responsive web applications”

AJAX Applications Google Maps Google Suggest Gmail Yahoo Maps (new) Login Forms Auto-Complete Voting and Rating Updating With User Content Form Submission & Validation Chat Rooms And Instant Messaging External Widgets Slicker Uis Lightboxes instead of pop-ups Using AJAX With Flash Using AJAX with CAPTCHA Ajax Dropdown Menu

How Ajax works

How Ajax works 1. An event occurs in a web page (the page is loaded, a button is clicked) 2. An XMLHttpRequest object is created by JavaScript 3. The XMLHttpRequest object sends a request to a web server 4. The server processes the request 5. The server sends a response back to the web page 6. The response is read by JavaScript 7. Proper action (like page update) is performed by JavaScript

Underlying technologies JavaScript HTML CSS XML XML is often used for receiving data from the server Plain text can also be used, so XML is optional HTTP XMLHttpRequest Object

Traditional vs AJAX Web Page

Ajax Client Server Architecture

Ajax Client Server Architecture

Ajax Client Server Architecture

XMLHttpRequest Object XMLHttpRequest  ( XHR ) is an API in the form of an object whose methods transfer data between a web browser and a web server

XMLHttpRequest Object The XMLHttpRequest object can be used to exchange data with a server behind the scenes. This means that it is possible to update parts of a web page, without reloading the whole page. Create an XMLHttpRequest Object Syntax for creating an XMLHttpRequest object: variable  = new  XMLHttpRequest (); Example var   xhttp = new  XMLHttpRequest ();

AJAX - Send a Request To a Server The XMLHttpRequest object is used to exchange data with a server. Send a Request To a Server To send a request to a server, we use the open() and send() methods of the XMLHttpRequest object: xhttp.open ("GET", "ajax_info.txt", true); xhttp.send (); Method Description open( method, url, async ) Specifies the type of request method : the type of request: GET or POST url : the server (file) location async : true (asynchronous) or false (synchronous) send() Sends the request to the server (used for GET) send( string ) Sends the request to the server (used for POST)

AJAX - Send a Request To a Server GET or POST? GET is simpler and faster than POST, and can be used in most cases. xhttp.open ("GET", "demo_get.asp", true); xhttp.send (); However, always use POST requests when: A cached file is not an option (update a file or database on the server). Sending a large amount of data to the server (POST has no size limitations). Sending user input (which can contain unknown characters), POST is more robust and secure than GET. xhttp.open ("POST", "demo_post.asp", true); xhttp.send ();

AJAX - Send a Request To a Server GET or POST? GET is simpler and faster than POST, and can be used in most cases. xhttp.open ("GET", "demo_get.asp", true); xhttp.send (); However, always use POST requests when: A cached file is not an option (update a file or database on the server). Sending a large amount of data to the server (POST has no size limitations). Sending user input (which can contain unknown characters), POST is more robust and secure than GET. xhttp.open ("POST", "demo_post.asp", true); xhttp.send ();

AJAX - Send a Request To a Server The url - A File On a Server The url parameter of the open() method, is an address to a file on a server: xhttp.open ("GET", "ajax_test.asp", true); The file can be any kind of file, like .txt and .xml, or server scripting files like .asp and . php (which can perform actions on the server before sending the response back).

AJAX - Send a Request To a Server Asynchronous - True or False? Server requests should be sent asynchronously. The async parameter of the open() method should be set to true: xhttp.open ("GET", "ajax_test.asp", true); By sending asynchronously, the JavaScript does not have to wait for the server response, but can instead: execute other scripts while waiting for server response deal with the response after the response is ready

AJAX - Server Response The onreadystatechange Property The  readyState  property holds the status of the XMLHttpRequest . The  onreadystatechange  property defines a function to be executed when the readyState changes. The  status  property and the  statusText  property holds the status of the XMLHttpRequest object.

Property Description onreadystatechange Defines a function to be called when the readyState property changes readyState Holds the status of the XMLHttpRequest. 0: request not initialized 1: server connection established 2: request received 3: processing request 4: request finished and response is ready status 200: "OK" 403: "Forbidden" 404: "Page not found " statusText Returns the status-text (e.g. "OK" or "Not Found")

The onreadystatechange function is called every time the readyState changes. When readyState is 4 and status is 200, the response is ready: function  loadDoc () {      var   xhttp = new  XMLHttpRequest ();     xhttp.onreadystatechange  = function() {         if ( this.readyState  == 4 &&  this.status  == 200) {             document.getElementById ("demo"). innerHTML  =   this.responseText ;        }     };     xhttp.open ("GET", "ajax_info.txt", true);     xhttp.send (); }

XMLHttpRequest Methods open (“method”, “URL”, [ async , username, password]) Assigns destination URL, method, etc. send ( params ) Sends request including postable string or DOM object data abort () Terminates current request getAllResponseHeaders () Returns headers (name/value pairs) as a string getResponseHeader (“header”) Returns value of a given header setRequestHeader (“ label”,”value ”) Sets Request Headers before sending

Steps for creating AJAX application C reate an XMLHttpRequest object Prepare the XMLHttpRequest object Send the XMLHttpRequest object Get the response from server Using response data Displaying the response

1. create an XMLHttpRequest object T hree ways of doing this For most browsers, just do var request = new XMLHttpRequest (); For some versions of Internet Explorer, do var request = new ActiveXObject (" Microsoft.XMLHTTP "); For other versions of Internet Explorer, do var request = new ActiveXObject ("Msxml2.XMLHTTP");

2. Prepare the XMLHttpRequest object request .open ( method , URL , asynchronous ) The method is usually 'GET' or 'POST ' The URL is where you are sending the data If using a 'GET' , append the data to the URL If using a 'POST' , add the data in a later step If asynchronous is true , the browser does not wait for a response (this is what you usually want) request .open ( method , URL ) As above, with asynchronous defaulting to true

3. Send the XMLHttpRequest object request .send (null); This is the version you use with a GET request request .send ( content ); This is the version you use with a POST request The content has the same syntax as the suffix to a GET request POST requests are used less frequently than GET requests For POST , you must set the content type: request.setRequestHeader ('Content- Type','application /x-www-form- urlencoded '); request.send ('var1=' + value1 + '&var2=' + value2 );

Method: GET or POST ? GET is simpler and faster than POST POST requests A cached file is not an option (update a file or database on the server) Sending a large amount of data to the server (POST has no size limitations) Sending user input (which can contain unknown characters), POST is more robust and secure than GET Syntax: xmlhttp.open (" GET","demo_get.asp",true ); xmlhttp.send (); xmlhttp.open (" POST","demo_post.asp",true ); xmlhttp.send ();

4. Server Response responseText - get the response data as a string responseXML - get the response data as XML data Example: document.getElementById (" myDiv "). innerHTML = xmlhttp.responseText ; xmlDoc = xmlhttp.responseXML ; txt =""; x= xmlDoc.getElementsByTagName ("ARTIST"); for (i=0;i< x.length;i ++) {   txt=txt + x[i]. childNodes [0]. nodeValue + "< br >"; } document.getElementById (" myDiv "). innerHTML =txt;

AJAX Example <!DOCTYPE html> <html> <head> <script> function loadXMLDoc () { xmlhttp =new XMLHttpRequest (); xmlhttp.open (" GET","myfile.txt "); xmlhttp.send (); xmlhttp.onreadystatechange =function() { if( xmlhttp.readyState ==4 && xmlhttp.status ==200) { document.getElementById (" myDiv "). innerHTML = xmlhttp.responseText ; } } } </script> </head> <body> <h1><center>ABC TECHNOLOGIES LTD.</center></h1> <hr> <div id=" myDiv "><h2>Let AJAX change this text</h2></div> <button type="button" onclick =" loadXMLDoc ()">Change Content</button> </body> </html>

AJAX Example for Reading XML <!DOCTYPE html> <html> <head> <script> function loadDoc () { xhttp = new XMLHttpRequest (); xhttp.onreadystatechange = function() { if ( this.readyState == 4 && this.status == 200) { var xmlDoc = xhttp.responseXML ; var table="<table border='1'>< tr >< th >Title</ th >< th >Artist</ th ></ tr >"; var x = xmlDoc.getElementsByTagName ("CD"); for ( i = 0; i < x.length ; i ++) { table += "< tr ><td>" + x[ i ]. getElementsByTagName ("TITLE")[0]. childNodes [0]. nodeValue + "</td><td>" + x[ i ]. getElementsByTagName ("ARTIST")[0]. childNodes [0]. nodeValue + "</td></ tr >"; } table+="</table>"; document.getElementById ("demo"). innerHTML = table; } }; xhttp.open ("GET", "cdcatalog.xml", true); xhttp.send (); } </script> </head> <body onload =" loadDoc ()"> <h1>Reading XML Data</h1> <div id="demo"></div> </body> </html>

AJAX Example with Database <!DOCTYPE html> <html> <head> <script> function viewScore () { request=new XMLHttpRequest (); try { request.onreadystatechange =function() { if( request.readyState ==4) { document.getElementById ('score'). innerHTML = request.responseText ; } }; request.open ("GET","dbaccess2.php",true); request.send (); } catch(e) { alert("Unable to connect to server"); } } setInterval ( viewScore , 1000); </script> </head> <body> <h1> Retrive data from database using AJAX</h1> <h2><span id="score"></span></h2> </body> </html>

dbaccess2.php <? php // Create connection $ conn = new mysqli ("localhost","abcd","1234", "test"); // Check connection if ($ conn -> connect_error ) { die("Connection failed:".$ conn -> connect_error ); } $ sql = "SELECT * FROM IPL"; $result = $ conn ->query($ sql ); if ($result-> num_rows > 0) { // output data of each row while($row = $result-> fetch_assoc ()) { echo "Score:".$row["score"]."/".$row["wicket"]." Overs :".$row["over"]; } } else { echo "0 results"; } $ conn ->close(); ?>

Callback function A JavaScript Callback Function is a function that is passed as a parameter to another JavaScript function, and the callback function is run inside of the function it was passed into JavaScript Callback Functions can be used synchronously or asynchronously

Call Back Method

Callback F unction Syntax function functionOne (x) { alert(x); } function functionTwo (var1, callback ) { callback (var1); } functionTwo (2, functionOne );

<!DOCTYPE html> <html> <body> <div id="demo"> <h2>The XMLHttpRequest Object</h2> <button type="button" onclick =" loadDoc ('ajaxinfo.txt', myFunction )">Change Content</button> </div> <!--AJAX CODE WITH CALL BACK FUNCTION --> <script> function myFunction ( xhttp ) { document.getElementById ("demo"). innerHTML = xhttp.responseText ; } function loadDoc ( url,cFunction ) { var xhttp ; xhttp =new XMLHttpRequest (); xhttp.onreadystatechange = function() { if ( this.readyState == 4 && this.status == 200) { cFunction (this);//Call Back Function, executes myFunction ( xhttp ) } }; xhttp.open ("GET", url , true); xhttp.send (); } </script> </body> </html>
Tags