SlideShare a Scribd company logo
JAVASCRIPT & DOM HTML
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & cú pháp trong Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & Các cú pháp Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Giới thiệu về Javascript
   Là ngôn ngữ Client-side script hoạt động trên
    trình duyệt của người dùng ( client )
   Chia sẻ xử lý trong ứng dụng web. Giảm các xử
    lý không cần thiết trên server.
   Giúp tạo các hiệu ứng, tương tác cho trang web.
Giới thiệu về Javascript
   Client-Side Script:
       Script được thực thi tại Client-Side ( trình duyệt ):
        Thực hiện các tương tác với người dùng ( tạo menu
        chuyển động, … ) , kiểm tra dữ liệu nhập, …
   Server-Side Script:
       Script được xử lý tại Server-Side, nhằm tạo các
        trang web có khả năng phát sinh nội dung động.
        Một số xử lý chính: kết nối CSDL, truy cập hệ
        thống file trên server, phát sinh nội dung html trả
        về người dùng…
Giới thiệu về Javascript
 o   Khi trình duyệt (Client browser) truy cập
     trang web có chứa các đoạn mã xử lý tại
     server-side. Server ( run-time engine) sẽ
     thực hiện các lệnh Server-side Scipts và trả
     về nội dung HTML cho trình duyệt

     Nội dung html trả về chủ yếu bao gồm: mã
     html, client-script.
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & Các cú pháp Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Nhúng Javascript vào trang web

Định nghĩa script trực tiếp trong trang html:

<script type=“text/javascript”>
    <!--
   // Lệnh Javascript
     -->
</script>


Nhúng sử dụng script cài đặt từ 1 file .js khác:
<script src=“xxx.js”></script>
Nhúng Javascript vào trang web
<html>
     <script type="text/javascript">
    <head>
         some javascript statements
     </script>type="text/javascript">
       <script
          some statements
       </script>
    </head>
    <body>
       <script type="text/javascript">
           some statements
       </script>
       <script src=“Tên_file_script.js">method()</script>
       <script type=“text/javascript”>
       // gọi thực hiện các phương thức được định nghĩa
       // trong “Tên_file_script.js”
       </script>
    </body>
</html>
Nhúng Javascript vào trang web

   Đặt giữa tag <head> và </head>: script sẽ thực
    thi ngay khi trang web được mở.

   Đặt giữa tag <body> và </body>: script trong
    phần body được thực thi khi trang web đang mở
    (sau khi thực thi các đoạn script có trong phần
    <head>).

   Số lượng đoạn client-script chèn vào trang
    không hạn chế.
VD: Nhúng Javascript vào trang web

<html>
    <body>
       document.write(“Hello world!”);
       <script type="text/javascript">
           document.write(“Hello world!”);
       </script>
    </body>
</html>
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & Các cú pháp Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Biến số trong Javascript
   Cách đặt tên biến
       Bắt đầu bằng một chữ cái hoặc dấu _
       A..Z,a..z,0..9,_ : phân biệt HOA, Thường

   Khai báo biến
       Sử dụng từ khóa var

        Ví dụ: var count=10,amount;
       Không cần khai báo biến trước khi sử dụng,
    biến thật sự tồn tại khi bắt đầu sử dụng lần đầu tiên
Kiểu dữ liệu trong Javascript
Kiểu dữ liệu   Ví dụ                             Mô tả
Object         var listBooks = new Array(10) ;   Trước khi sử dụng, phải cấp phát
                                                 bằng từ khóa new
String         “The cow jumped over the moon.”   Chứa được chuổi unicode
               “40”                              Chuổi rỗng “”
Number         0.066218                          Theo chuẩn IEEE 754
               12
boolean        true / false

undefined      var myVariable ;                  myVariable = undefined


null           connection.Close();               connection = null
Đổi kiểu dữ liệu
   Biến tự đổi kiểu dữ liệu khi giá trị mà nó lưu
    trữ thay đổi
Ví dụ:
    var x = 10;              // x kiểu Number
    x = “hello world !”;     // x kiểu String
   Có thể cộng 2 biến khác kiểu dữ liệu
Ví dụ:
    var x;
    x = “12” + 34.5;    // KQ: x = “1234.5”
   Hàm parseInt(…), parseFloat(…) : Đổi KDL
    từ chuỗi sang số.
Hàm trong Javascript
   Dạng thức khai báo chung:
    function Tên_hàm(thamso1, thamso2,..)
    {
      ………
    }
   Hàm có giá trị trả về:
    function Tên_hàm(thamso1, thamso2,..)
    {
      ………
      return (value);
    }
Hàm trong Javascript
   Ví dụ:
    function   Sum(x, y)
    {
      tong =   x + y;
      return   tong;
    }


   Gọi hàm:
    var x = Sum(10, 20);
Các quy tắc chung
   Khối lệnh được bao trong dấu {}
   Mỗi lệnh nên kết thúc bằng dấu ;
   Cách ghi chú thích:
       // Chú thích 1 dòng
       /* Chú thích
           nhiều dòng */
Câu lệnh if
if (condition)
{
  statement[s] if true
}
else
{
  statement[s] if false
}

Ví dụ:
var x = 5, y = 6, z;
- if (x == 5) { if (y == 6) z = 17; } else z = 20;
Câu lệnh switch
                          Ví dụ :
switch (expression)       var diem = “G”;
{                         switch (diem) {
                                   case “Y”:
       case label :                          document.write(“Yếu");
                                             break;
        statementlist              case “TB”:
       case label :                          document.write(“Trung bình");
                                             break;
          statementlist            case “K”:
           ...                               document.write(“Khá");
                                             break;
   default :                       case “G” :
                                             document.write(“Giỏi");
        statement list                       break;
}                                  default:
                                             document.write(“Xuất sắc")
                          }
Vòng lặp for
for ([initial expression]; [condition];
   [update expression]) {
   statement[s] inside loop
}


 Ví dụ:
 var myarray = new Array();
 for (i = 0; i < 10; i++)
 {
        myarray[i] = i;
 }
Vòng lặp while
while (expression)
{
   statements
}

Ví dụ:
var i = 9, total = 0;
while (i < 10)
{
       total += i * 3 + 5;
       i = i +5;
}
Vòng lặp do.. while
do
   {
   statement
}while (expression);

Ví dụ:
var i = 9, total = 0;
do
{
      total += i * 3 + 5;
      i = i +5;
} while (i > 10);
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & Các cú pháp Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Các sự kiện thông dụng
   Các sự kiện được hỗ trợ bởi hầu hết các đối tượng
           onClick                  onLoad
                                     onSubmit
           onFocus                  onResize
           onChange                 ………
           onBlur
           onMouseOver
           onMouseOut
           onMouseDown
           onMouseUp
Xử lý sự kiện cho các thẻ HTML
  Cú pháp 1:
 <TAG eventHandler = "JavaScript Code">
 Ví dụ:

<body>

    <INPUT TYPE="button“ NAME="Button1“
    VALUE="OpenSesame!”
    onClick="window.open('mydoc.html');">

</body>
   Lưu ý: Dấu “…” và ‘…’
Xử lý sự kiện bằng function

<head>
   <script language=“Javascript”>
     function GreetingMessage()
     {
          window.alert(“Welcome to my
   world”);
     }
   </script>
</head>

<body onload=“GreetingMessage()”>
</body>
Xử lý sự kiện bằng thuộc tính
   Gán tên hàm xử lý cho 1 object event
             object.eventhandler = function_name;
   Ví dụ:

<head>
    <script language=“Javascript”>
       function GreetingMessage()
       {
              window.alert(“Welcome to my world”);
       }

       window.onload = GreetingMessage ()
    </script>
</head>

<body>
</body>
Ví dụ: onclick Event
<SCRIPT LANGUAGE="JavaScript">
    function compute(frm)
    {
          var x = frm.expr.value;
          result.innerHTML = x*x;
    }
</SCRIPT>


<FORM name=“frm”>
    X = <INPUT TYPE="text" NAME="expr" SIZE=15>
    <BR><BR>
    <INPUT TYPE="button" VALUE=“Calculate”
    ONCLICK="compute(this.form)">
    <BR>
    X * X = <SPAN ID="result"></SPAN>
</FORM>
Ví dụ: onFocus - onBlur
   Xảy ra khi một thành phần HTML bị focus
    (onFocus) và mất focus (onBlur)
   Ví dụ:

<BODY BGCOLOR="lavender">
    <FORM>
      <INPUT type=“text” name=“myTextbox”
              onblur=“(document.bgColor='aqua')”
              onfocus=“(document.bgColor='dimgray')”>
    </FORM>
</BODY>
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & Các cú pháp Javascript
   Sử dụng các đối tượng trong Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Đối tượng HTML DOM
   DOM = Document Object Model
   Là tập hợp các đối tượng HTML chuẩn được
    dùng để truy xuất và thay đổi thành phần
    HTML trong trang web ( thay đổi nội dung tài
    liệu của trang )
   Một số đối tượng của DOM: window,
    document, history, link, form, frame, location,
    event, …
Đối tượng Window - DOM
   Là thể hiện của đối tượng cửa sổ trình duyệt
   Tồn tại khi mở 1 tài liệu HTML
   Sử dụng để truy cập thông tin của các đối
    tượng trên cửa sổ trình duyệt ( tên trình duyệt,
    phiên bản trình duyệt, thanh tiêu đề, thanh
    trạng thái … )
Đối tượng Window - DOM
   Properties         Methods
       document           alert
       event              confirm
       history
       location
                           prompt
       name
                           blur
       navigator          close
       screen             focus
       status             open
Đối tượng Window - DOM
   Ví dụ:
<html>
    <body>
       <script type="text/javascript">
             var curURL = window.location;
             window.alert(curURL);
       </script>
    </body>
</html>
Đối tượng Document - DOM
   Biểu diễn cho nội dung trang HTML đang được
    hiển thị trên trình duyệt
   Dùng để lấy thông tin về tài liệu, các thành
    phần HTML và xử lý sự kiện
Đối tượng Document - DOM
   Properties                              Methods
       aLinkColor        documentElement      close
       bgColor           cookie               open
       body              ……                   createTextNode(“ text ")
       fgColor                                 createElement(“HTMLtag")
       linkColor                               getElementById(“id”)
       title                                   …
       URL
       vlinkColor
       forms[]
       images[]
       childNodes[]
Đối tượng Document - DOM
   Biểu diễn nội dung của tài liệu theo cấu trúc cây
<html>
         <head>
              <title>DOM Test</title>
       </head>
       <body>
       <h1>DOM Test Heading</h1>
       <hr />
       <!-- Just a comment -->
       <p id=“p1” >A paragraph of <em>text</em>
                     is just an example</p>
       <ul>
              <li>
                   <a href=“http://www.yahoo.com” > Yahoo!
                         </a>
              </li>
       </ul>
       </body>
    </html>
Đối tượng Document - DOM
   Cấu trúc cây nội dung tài liệu
Đối tượng Document - DOM
   Các loại DOM Node chính
Đối tượng Document - DOM
   getElementById ( id1 )
     Trả về node có giá trị thuộc tính id = id1
    Ví dụ:
       //<p id="id1" >
       //     some text    Text Node
       //</p>

       var   node = document.getElementById(“id1”);
       var   nodeName = node.nodeName; // p
       var   nodeType = node.nodeType; // 1
       var   nodeValue = node.nodeValue; // null
       var   text     = node.innerText ; // some text
Đối tượng Document - DOM
   createElement ( nodeName )
    Cho phép tạo ra 1 node HTML mới tùy theo
    đối số nodeName đầu vào



    Ví dụ:
       var imgNode = document.createElement(“img”);
       imgNode.src = “images/test.gif”;

      // <img src=“images/test.gif” />
Đối tượng Document - DOM
   createTextNode ( content )


    Ví dụ:
       var textNode = document.createTextNode(“New
                                     text”);
       var pNode = document.createElement(“p”);
    pNode.appendChild(textNode);

       // <p>New text</p>
Đối tượng Document - DOM
   appendChild ( newNode )
    Chèn node mới newNode vào cuối danh
    sách các node con của một node.
    Ví dụ:
       //<p id="id1" >
       //     some text
       //</p>
       var pNode = document.getElementById(“id1”);
       var imgNode = document.createElement(“img”);
       imgNode.src = “images/test.gif”;
       pNode.appendChild(imgNode);

      //<p id="id1" >
      //     some text<img src=“images/test.gif” />
      //</p>
Đối tượng Document - DOM
    innerHTML
     Chỉ định nội dung HTML bên trong một node.
   Ví dụ:
   //<p id=“para1" >
   // some text
   //</p>
var theElement = document.getElementById("para1");
theElement.innerHTML = “Some <b> new </b> text”;

//   Kết quả :
//   <p id=“para1” >
//   Some <b> new <b/> text
//   </p>
Đối tượng Document - DOM
   innerText
    Tương tự innerHTML, tuy nhiên bất kỳ nội
    dung nào đưa vào cũng được xem như là text
    hơn là các thẻ HTML.
   Ví dụ:
var theElement = document.getElementById("para1");
theElement.innerText = “Some <b> new </b> text”;
// Kết quả hiển thị trên trình duyệt
// bên trong thẻ p: “Some <b> new </b> text”
Nội dung
   Giới thiệu về Javascript
   Kiểu dữ liệu & Các cú pháp Javascript
   Nhúng Javascript vào trang web
   Sử dụng các đối tượng trong Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Ví dụ: Dynamic Table
   Viết trang web cho phép tạo table có số dòng,
    số cột do người dùng nhập vào.
Ví dụ: Dynamic Table
                             body


<Table>
                                    Table
     <Tr>
             <td> 12 </td>                  Tr
             <td> 13 </td>
     </Tr>                                       Td

     <Tr>                                        Td
             <td> 21 </td>
             <td> 22 </td>                  Tr
     </Tr>
                                                 Td
</Table>
                                                 Td
Ví dụ:                body



                               Table


<Table>
                                       TBody
    <Tbody>
      <Tr>
               <td> 12 </td>                   Tr
               <td> 13 </td>
      </Tr>                                         Td

      <Tr>                                          Td
               <td> 21 </td>
               <td> 22 </td>                   Tr
      </Tr>
    </Tbody>                                        Td
</Table>
                                                    Td
Ví dụ: Dynamic Table
   Document.createElement(…) :Tạo một đối
    tượng thẻ DOM HTML
   Object.appendChild(…): Thêm một đối tượng
    thẻ DOM HTML như là nút con.
Ví dụ: Dynamic Table
function CreateTable(divTable)
        {
            var tagTable = document.createElement("table");
            tagTable.border = 1;
            var tagTBody = document.createElement("tbody");
            tagTable.appendChild(tagTBody);

           var nDong = txtSoDong.value;
           var nCot = txtSoCot.value;

           for (i=0; i<nDong; i++)
           {
               var tagTR = document.createElement("tr");
               for (j=0; j<nCot; j++)
               {
                   var tagTD = document.createElement("td");
                   var textNode = document.createTextNode(i+""+j);
                   tagTD.appendChild(textNode);

                   tagTR.appendChild(tagTD);
               }

               tagTBody.appendChild(tagTR);
           }

           divTable.appendChild(tagTable);
       }

More Related Content

DOC
Bài tập javascript
DOC
Bai tap java_script-html-2016
PDF
Bai tap thuc hanh javascript
DOCX
Kiem tra javascript
PDF
Ebook học Javascript cơ bản tới nâng cao
PDF
BÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPT
PDF
Bai Tap Thuc Hanh Javascript
PDF
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
Bài tập javascript
Bai tap java_script-html-2016
Bai tap thuc hanh javascript
Kiem tra javascript
Ebook học Javascript cơ bản tới nâng cao
BÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPT
Bai Tap Thuc Hanh Javascript
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT

What's hot (18)

PDF
Slide3 - Co ban HTML5
PDF
Giao trinh java script
PDF
Giao Trinh Jquery
PDF
Tài liệu tìm hiểu jQuery dành cho người mới bắt đầu
PPT
Session 08 Final
PPT
Tu dong dat hang tu he thong ban le lon nhat trung quoc
PDF
Bài 3: Cấu trúc điều khiển, hàm và xử lý sự kiện - Giáo trình FPT
PDF
Bài 6: Tạo hiệu ứng và validate Form - Giáo trình FPT
PDF
Tu hoc javascript
DOCX
Bat dau hoc lap trinh asp
PPT
Session 10 Final
PDF
Meo lap trinh_tech24.vn
PDF
Java script
PPT
Session 09 Final
PPT
05 - Phan Thai Trung - Tu dong dat hang tu he thong ban le lon nhat Trung Quoc
PPT
Phan thai trung tu dong dat hang tu he thong ban le lon nhat trung quoc
DOC
Giao trinh java_script (1)
PPT
Hoc Jquery Trong 1h
Slide3 - Co ban HTML5
Giao trinh java script
Giao Trinh Jquery
Tài liệu tìm hiểu jQuery dành cho người mới bắt đầu
Session 08 Final
Tu dong dat hang tu he thong ban le lon nhat trung quoc
Bài 3: Cấu trúc điều khiển, hàm và xử lý sự kiện - Giáo trình FPT
Bài 6: Tạo hiệu ứng và validate Form - Giáo trình FPT
Tu hoc javascript
Bat dau hoc lap trinh asp
Session 10 Final
Meo lap trinh_tech24.vn
Java script
Session 09 Final
05 - Phan Thai Trung - Tu dong dat hang tu he thong ban le lon nhat Trung Quoc
Phan thai trung tu dong dat hang tu he thong ban le lon nhat trung quoc
Giao trinh java_script (1)
Hoc Jquery Trong 1h
Ad

Similar to Javascript and dom_html (20)

PPTX
Tài liệu hướng dẫn sử dụng javascript cho lập trình web
PDF
lap-trinh-web_nguyen-huy-khanh_web1-07-javascript - [cuuduongthancong.com] (1...
PDF
C3-Javascript.pdf
PDF
Javascript tong-hop a-z
PDF
Giao trinh java script
PDF
Tự học JavaScript
PDF
thiet_ke_web_chuong_4_laptrinhJavascript.pdf
PDF
6. javascript basic
PDF
Asp control
PDF
Bai4 basic jsp_4474
PPT
Ung dung web chuong 5
PPT
Web Services
PPT
88247697-JavaScript.ppt
PPT
Session 07 Final
DOC
JavaScript (Tieng viet)
DOC
Giao trinh java_script
PDF
Bai1 gioi thieu_servlet_va_jsp_8952
PDF
Java script dh bk share-book.com
PDF
01 ngon ngu_c#_phan_1
PDF
01 ngon ngu_c#_phan_1
Tài liệu hướng dẫn sử dụng javascript cho lập trình web
lap-trinh-web_nguyen-huy-khanh_web1-07-javascript - [cuuduongthancong.com] (1...
C3-Javascript.pdf
Javascript tong-hop a-z
Giao trinh java script
Tự học JavaScript
thiet_ke_web_chuong_4_laptrinhJavascript.pdf
6. javascript basic
Asp control
Bai4 basic jsp_4474
Ung dung web chuong 5
Web Services
88247697-JavaScript.ppt
Session 07 Final
JavaScript (Tieng viet)
Giao trinh java_script
Bai1 gioi thieu_servlet_va_jsp_8952
Java script dh bk share-book.com
01 ngon ngu_c#_phan_1
01 ngon ngu_c#_phan_1
Ad

More from Trường Dạy Nghề (20)

PDF
Lich khai-giang-t10
PPT
Hinh anh khoa hoc y tuong kinh doanh
PPT
Hoc vien thanh dat
PPT
Gioi thieu he thong e learning
DOC
Do an thuc hanh(de4)
DOC
Do an thuc hanh(de3)
DOC
Do an thuc hanh(de2)
DOC
Do an thuc hanh(de1)
DOC
De1 ccb 05_05_2013_hung_vuong
DOC
De access 1 (2013)
PPT
Tong quan seo
PDF
Bai tap quan_ly_chuyen_bay
DOCX
Main categories tabs
DOCX
Level test format 08092011
DOCX
DOCX
PPT
09 web course_-_php_nang_cao
PPT
08 web course php ket noi csdl
Lich khai-giang-t10
Hinh anh khoa hoc y tuong kinh doanh
Hoc vien thanh dat
Gioi thieu he thong e learning
Do an thuc hanh(de4)
Do an thuc hanh(de3)
Do an thuc hanh(de2)
Do an thuc hanh(de1)
De1 ccb 05_05_2013_hung_vuong
De access 1 (2013)
Tong quan seo
Bai tap quan_ly_chuyen_bay
Main categories tabs
Level test format 08092011
09 web course_-_php_nang_cao
08 web course php ket noi csdl

Javascript and dom_html

  • 2. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & cú pháp trong Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 3. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & Các cú pháp Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 4. Giới thiệu về Javascript  Là ngôn ngữ Client-side script hoạt động trên trình duyệt của người dùng ( client )  Chia sẻ xử lý trong ứng dụng web. Giảm các xử lý không cần thiết trên server.  Giúp tạo các hiệu ứng, tương tác cho trang web.
  • 5. Giới thiệu về Javascript  Client-Side Script:  Script được thực thi tại Client-Side ( trình duyệt ): Thực hiện các tương tác với người dùng ( tạo menu chuyển động, … ) , kiểm tra dữ liệu nhập, …  Server-Side Script:  Script được xử lý tại Server-Side, nhằm tạo các trang web có khả năng phát sinh nội dung động. Một số xử lý chính: kết nối CSDL, truy cập hệ thống file trên server, phát sinh nội dung html trả về người dùng…
  • 6. Giới thiệu về Javascript o Khi trình duyệt (Client browser) truy cập trang web có chứa các đoạn mã xử lý tại server-side. Server ( run-time engine) sẽ thực hiện các lệnh Server-side Scipts và trả về nội dung HTML cho trình duyệt Nội dung html trả về chủ yếu bao gồm: mã html, client-script.
  • 7. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & Các cú pháp Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 8. Nhúng Javascript vào trang web Định nghĩa script trực tiếp trong trang html: <script type=“text/javascript”> <!-- // Lệnh Javascript --> </script> Nhúng sử dụng script cài đặt từ 1 file .js khác: <script src=“xxx.js”></script>
  • 9. Nhúng Javascript vào trang web <html> <script type="text/javascript"> <head> some javascript statements </script>type="text/javascript"> <script some statements </script> </head> <body> <script type="text/javascript"> some statements </script> <script src=“Tên_file_script.js">method()</script> <script type=“text/javascript”> // gọi thực hiện các phương thức được định nghĩa // trong “Tên_file_script.js” </script> </body> </html>
  • 10. Nhúng Javascript vào trang web  Đặt giữa tag <head> và </head>: script sẽ thực thi ngay khi trang web được mở.  Đặt giữa tag <body> và </body>: script trong phần body được thực thi khi trang web đang mở (sau khi thực thi các đoạn script có trong phần <head>).  Số lượng đoạn client-script chèn vào trang không hạn chế.
  • 11. VD: Nhúng Javascript vào trang web <html> <body> document.write(“Hello world!”); <script type="text/javascript"> document.write(“Hello world!”); </script> </body> </html>
  • 12. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & Các cú pháp Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 13. Biến số trong Javascript  Cách đặt tên biến  Bắt đầu bằng một chữ cái hoặc dấu _  A..Z,a..z,0..9,_ : phân biệt HOA, Thường  Khai báo biến  Sử dụng từ khóa var Ví dụ: var count=10,amount;  Không cần khai báo biến trước khi sử dụng, biến thật sự tồn tại khi bắt đầu sử dụng lần đầu tiên
  • 14. Kiểu dữ liệu trong Javascript Kiểu dữ liệu Ví dụ Mô tả Object var listBooks = new Array(10) ; Trước khi sử dụng, phải cấp phát bằng từ khóa new String “The cow jumped over the moon.” Chứa được chuổi unicode “40” Chuổi rỗng “” Number 0.066218 Theo chuẩn IEEE 754 12 boolean true / false undefined var myVariable ; myVariable = undefined null connection.Close(); connection = null
  • 15. Đổi kiểu dữ liệu  Biến tự đổi kiểu dữ liệu khi giá trị mà nó lưu trữ thay đổi Ví dụ: var x = 10; // x kiểu Number x = “hello world !”; // x kiểu String  Có thể cộng 2 biến khác kiểu dữ liệu Ví dụ: var x; x = “12” + 34.5; // KQ: x = “1234.5”  Hàm parseInt(…), parseFloat(…) : Đổi KDL từ chuỗi sang số.
  • 16. Hàm trong Javascript  Dạng thức khai báo chung: function Tên_hàm(thamso1, thamso2,..) { ……… }  Hàm có giá trị trả về: function Tên_hàm(thamso1, thamso2,..) { ……… return (value); }
  • 17. Hàm trong Javascript  Ví dụ: function Sum(x, y) { tong = x + y; return tong; }  Gọi hàm: var x = Sum(10, 20);
  • 18. Các quy tắc chung  Khối lệnh được bao trong dấu {}  Mỗi lệnh nên kết thúc bằng dấu ;  Cách ghi chú thích:  // Chú thích 1 dòng  /* Chú thích nhiều dòng */
  • 19. Câu lệnh if if (condition) { statement[s] if true } else { statement[s] if false } Ví dụ: var x = 5, y = 6, z; - if (x == 5) { if (y == 6) z = 17; } else z = 20;
  • 20. Câu lệnh switch Ví dụ : switch (expression) var diem = “G”; { switch (diem) { case “Y”: case label : document.write(“Yếu"); break;       statementlist case “TB”: case label : document.write(“Trung bình"); break; statementlist case “K”:     ... document.write(“Khá"); break;  default : case “G” : document.write(“Giỏi");       statement list break; } default: document.write(“Xuất sắc") }
  • 21. Vòng lặp for for ([initial expression]; [condition]; [update expression]) { statement[s] inside loop } Ví dụ: var myarray = new Array(); for (i = 0; i < 10; i++) { myarray[i] = i; }
  • 22. Vòng lặp while while (expression) { statements } Ví dụ: var i = 9, total = 0; while (i < 10) { total += i * 3 + 5; i = i +5; }
  • 23. Vòng lặp do.. while do { statement }while (expression); Ví dụ: var i = 9, total = 0; do { total += i * 3 + 5; i = i +5; } while (i > 10);
  • 24. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & Các cú pháp Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 25. Các sự kiện thông dụng  Các sự kiện được hỗ trợ bởi hầu hết các đối tượng  onClick  onLoad  onSubmit  onFocus  onResize  onChange  ………  onBlur  onMouseOver  onMouseOut  onMouseDown  onMouseUp
  • 26. Xử lý sự kiện cho các thẻ HTML  Cú pháp 1: <TAG eventHandler = "JavaScript Code">  Ví dụ: <body> <INPUT TYPE="button“ NAME="Button1“ VALUE="OpenSesame!” onClick="window.open('mydoc.html');"> </body>  Lưu ý: Dấu “…” và ‘…’
  • 27. Xử lý sự kiện bằng function <head> <script language=“Javascript”> function GreetingMessage() { window.alert(“Welcome to my world”); } </script> </head> <body onload=“GreetingMessage()”> </body>
  • 28. Xử lý sự kiện bằng thuộc tính  Gán tên hàm xử lý cho 1 object event object.eventhandler = function_name;  Ví dụ: <head> <script language=“Javascript”> function GreetingMessage() { window.alert(“Welcome to my world”); } window.onload = GreetingMessage () </script> </head> <body> </body>
  • 29. Ví dụ: onclick Event <SCRIPT LANGUAGE="JavaScript"> function compute(frm) { var x = frm.expr.value; result.innerHTML = x*x; } </SCRIPT> <FORM name=“frm”> X = <INPUT TYPE="text" NAME="expr" SIZE=15> <BR><BR> <INPUT TYPE="button" VALUE=“Calculate” ONCLICK="compute(this.form)"> <BR> X * X = <SPAN ID="result"></SPAN> </FORM>
  • 30. Ví dụ: onFocus - onBlur  Xảy ra khi một thành phần HTML bị focus (onFocus) và mất focus (onBlur)  Ví dụ: <BODY BGCOLOR="lavender"> <FORM> <INPUT type=“text” name=“myTextbox” onblur=“(document.bgColor='aqua')” onfocus=“(document.bgColor='dimgray')”> </FORM> </BODY>
  • 31. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & Các cú pháp Javascript  Sử dụng các đối tượng trong Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 32. Đối tượng HTML DOM  DOM = Document Object Model  Là tập hợp các đối tượng HTML chuẩn được dùng để truy xuất và thay đổi thành phần HTML trong trang web ( thay đổi nội dung tài liệu của trang )  Một số đối tượng của DOM: window, document, history, link, form, frame, location, event, …
  • 33. Đối tượng Window - DOM  Là thể hiện của đối tượng cửa sổ trình duyệt  Tồn tại khi mở 1 tài liệu HTML  Sử dụng để truy cập thông tin của các đối tượng trên cửa sổ trình duyệt ( tên trình duyệt, phiên bản trình duyệt, thanh tiêu đề, thanh trạng thái … )
  • 34. Đối tượng Window - DOM  Properties  Methods  document  alert  event  confirm  history  location  prompt  name  blur  navigator  close  screen  focus  status  open
  • 35. Đối tượng Window - DOM  Ví dụ: <html> <body> <script type="text/javascript"> var curURL = window.location; window.alert(curURL); </script> </body> </html>
  • 36. Đối tượng Document - DOM  Biểu diễn cho nội dung trang HTML đang được hiển thị trên trình duyệt  Dùng để lấy thông tin về tài liệu, các thành phần HTML và xử lý sự kiện
  • 37. Đối tượng Document - DOM  Properties  Methods  aLinkColor  documentElement  close  bgColor  cookie  open  body  ……  createTextNode(“ text ")  fgColor  createElement(“HTMLtag")  linkColor  getElementById(“id”)  title  …  URL  vlinkColor  forms[]  images[]  childNodes[]
  • 38. Đối tượng Document - DOM  Biểu diễn nội dung của tài liệu theo cấu trúc cây <html> <head> <title>DOM Test</title> </head> <body> <h1>DOM Test Heading</h1> <hr /> <!-- Just a comment --> <p id=“p1” >A paragraph of <em>text</em> is just an example</p> <ul> <li> <a href=“http://www.yahoo.com” > Yahoo! </a> </li> </ul> </body> </html>
  • 39. Đối tượng Document - DOM  Cấu trúc cây nội dung tài liệu
  • 40. Đối tượng Document - DOM  Các loại DOM Node chính
  • 41. Đối tượng Document - DOM  getElementById ( id1 ) Trả về node có giá trị thuộc tính id = id1 Ví dụ: //<p id="id1" > // some text Text Node //</p> var node = document.getElementById(“id1”); var nodeName = node.nodeName; // p var nodeType = node.nodeType; // 1 var nodeValue = node.nodeValue; // null var text = node.innerText ; // some text
  • 42. Đối tượng Document - DOM  createElement ( nodeName ) Cho phép tạo ra 1 node HTML mới tùy theo đối số nodeName đầu vào Ví dụ: var imgNode = document.createElement(“img”); imgNode.src = “images/test.gif”; // <img src=“images/test.gif” />
  • 43. Đối tượng Document - DOM  createTextNode ( content ) Ví dụ: var textNode = document.createTextNode(“New text”); var pNode = document.createElement(“p”); pNode.appendChild(textNode); // <p>New text</p>
  • 44. Đối tượng Document - DOM  appendChild ( newNode ) Chèn node mới newNode vào cuối danh sách các node con của một node. Ví dụ: //<p id="id1" > // some text //</p> var pNode = document.getElementById(“id1”); var imgNode = document.createElement(“img”); imgNode.src = “images/test.gif”; pNode.appendChild(imgNode); //<p id="id1" > // some text<img src=“images/test.gif” /> //</p>
  • 45. Đối tượng Document - DOM  innerHTML Chỉ định nội dung HTML bên trong một node. Ví dụ: //<p id=“para1" > // some text //</p> var theElement = document.getElementById("para1"); theElement.innerHTML = “Some <b> new </b> text”; // Kết quả : // <p id=“para1” > // Some <b> new <b/> text // </p>
  • 46. Đối tượng Document - DOM  innerText Tương tự innerHTML, tuy nhiên bất kỳ nội dung nào đưa vào cũng được xem như là text hơn là các thẻ HTML. Ví dụ: var theElement = document.getElementById("para1"); theElement.innerText = “Some <b> new </b> text”; // Kết quả hiển thị trên trình duyệt // bên trong thẻ p: “Some <b> new </b> text”
  • 47. Nội dung  Giới thiệu về Javascript  Kiểu dữ liệu & Các cú pháp Javascript  Nhúng Javascript vào trang web  Sử dụng các đối tượng trong Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 48. Ví dụ: Dynamic Table  Viết trang web cho phép tạo table có số dòng, số cột do người dùng nhập vào.
  • 49. Ví dụ: Dynamic Table body <Table> Table <Tr> <td> 12 </td> Tr <td> 13 </td> </Tr> Td <Tr> Td <td> 21 </td> <td> 22 </td> Tr </Tr> Td </Table> Td
  • 50. Ví dụ: body Table <Table> TBody <Tbody> <Tr> <td> 12 </td> Tr <td> 13 </td> </Tr> Td <Tr> Td <td> 21 </td> <td> 22 </td> Tr </Tr> </Tbody> Td </Table> Td
  • 51. Ví dụ: Dynamic Table  Document.createElement(…) :Tạo một đối tượng thẻ DOM HTML  Object.appendChild(…): Thêm một đối tượng thẻ DOM HTML như là nút con.
  • 52. Ví dụ: Dynamic Table function CreateTable(divTable) { var tagTable = document.createElement("table"); tagTable.border = 1; var tagTBody = document.createElement("tbody"); tagTable.appendChild(tagTBody); var nDong = txtSoDong.value; var nCot = txtSoCot.value; for (i=0; i<nDong; i++) { var tagTR = document.createElement("tr"); for (j=0; j<nCot; j++) { var tagTD = document.createElement("td"); var textNode = document.createTextNode(i+""+j); tagTD.appendChild(textNode); tagTR.appendChild(tagTD); } tagTBody.appendChild(tagTR); } divTable.appendChild(tagTable); }