Professional Documents
Culture Documents
1
Nội dung
HTML DOM
Giới thiệu
Xử lý sự kiện (event)
Một số đối tượng HTML DOM
Duyệt và quản lý cấu trúc cây HTML DOM
THIẾT KẾ VÀ LẬP TRÌNH WEB
2
HTML DOM – Giới thiệu
4
HTML DOM – Giới thiệu
HTML DOM – Giới thiệu
trình.
5
THIẾT KẾ VÀ LẬP TRÌNH WEB
6
HTML DOM – Giới thiệu
HTML DOM – Giới thiệu
Cấu trúc cây đối tượng DOM trong JavaScript (chưa thể hiện
đầy đủ tất cả đối tượng HTML DOM)
window
button checkbox
radio select
reset textarea
text submit
7
THIẾT KẾ VÀ LẬP TRÌNH WEB
8
HTML DOM – Giới thiệu
HTML DOM – Giới thiệu
Ví dụ:document.bgColor = “blue”;
objectName.methodName();
Ví dụ: window.focus();
10
HTML DOM – Giới thiệu
DOM – Events
Các thẻ HTML, đặc biệt là các thẻ
HTML Form, có các thuộc tính xử lý sự
kiện bắt đầu bằng onXYZ
THIẾT KẾ VÀ LẬP TRÌNH WEB
12
HTML DOM – Giới thiệu
DOM – Events
onLoad Xảy ra khi web page bắt đầu load lên web browser
onFocus Xảy ra khi element được chọn (click chuột, phím tab)
THIẾT KẾ VÀ LẬP TRÌNH WEB
13
HTML DOM – Giới thiệu
DOM – Events – Ví dụ
THIẾT KẾ VÀ LẬP TRÌNH WEB
14
HTML DOM – Giới thiệu
Tên Giải thích
DOM – Events onClick Xảy ra khi nhấp chuột
Tham khảo
HTMLDOM_Event_Compatibility.htm
http://www.quirksmode.org/dom/events/
15
HTML DOM – Giới thiệu
DOM – Events – ví dụ
THIẾT KẾ VÀ LẬP TRÌNH WEB
16
HTML DOM – Đối tượng WINDOW
document Đối tượng chứa nội dung file isNaN(), Các hàm
HTML theo cấu trúc DOM. Number(), toàn cục …
Có thể truy cập tất cả các thẻ String()
HTML của web page
location Đối tượng chứa URL của web alert(), Các hàm
page đang mở confirm(), mở cửa số
17
prompt() thông báo
HTML DOM – Đối tượng WINDOW
Property
document name
history status
location event
Parent screen
frame[] …
THIẾT KẾ VÀ LẬP TRÌNH WEB
Method
alert open
confirm close
prompt setTimeout
blur setInterval
focus ….
18
HTML DOM – Đối tượng đặc biệt EVENT
20
HTML DOM – Đối tượng window.document
head
forms
THIẾT KẾ VÀ LẬP TRÌNH WEB
form
elements
links method
link
href id
body
21
HTML DOM – Đối tượng window.document
Mảng chứa tất cả form trong web page (trong file HTML)
forms[]
Mỗi phần tử là 1 đối tượng tương ứng với 1 thẻ <form>
Xuất chuỗi (được hiểu theo dạng HTML) ra nội dung web
write()
page
getElementById() Trả về đối tượng HTML DOM có thuộc tính ID tương ứng
getElementsByTagName() Trả về mảng đối tượng HTML DOM có tên thẻ tương ứng
22
HTML DOM – Đối tượng FORM
23
HTML DOM – Đối tượng FORM
reset() Trả tất cả các control của form về gía trị ban đầu
Gửi dữ liệu đã nhập đến địa chỉ URL được chỉ định trong thuộc tính
form.action
submit()
Nếu webpage có nhiều form, chỉ có các control của form được submit
mới gửi dữ liệu đã nhập đi.
24
THIẾT KẾ VÀ LẬP TRÌNH WEB HTML DOM – Đối tượng FORM
25
HTML DOM – Các đối tượng CONTROL của FORM
26
HTML DOM – Các đối tượng CONTROL của FORM
Chỉ định control bị mờ hay không (true – mờ, false – không mờ). Mờ đi có
disabled
nghĩa là không thể tương tác với control.
value Thiết lập và trả về giá trị mà control được chọn/nhập (kiểu chuỗi)
THIẾT KẾ VÀ LẬP TRÌNH WEB
Trả về và thiết lập thứ tự tab của control (thứ tự di chuyển giữa các control
tabIndex
khi nhấn phím Tab trên bàn phím).
focus() Gọi phương thức để set focus (để có thể nhập dữ liệu vào) cho 1 control
Gọi phương thức để làm mất focus của 1 control (không nhập dữ liệu
blur()
vào được)
27
HTML DOM – Các đối tượng CONTROL của FORM
checked Trả về và cài đặt control được chọn hay không (true – false)
click() Gọi phương thức để giả lập sự kiện click chuột vào control
28
HTML DOM – Các đối tượng CONTROL của FORM
Một số thuộc tính & phương thức phổ biến
khác của control TextBox, Password
Thuộc tính Giải thích
maxLength Trả về và cài đặt tổng số ký tự tối đa có thể gõ vào trong control
Trả về và cài đặt thuộc tính chỉ đọc của control (control chỉ đọc có nghĩa
THIẾT KẾ VÀ LẬP TRÌNH WEB
readOnly
là không thể nhập giá trị mới vào control)
select() Gọi phương thức đề chọn (~highlight xanh) giá trị của control
29
HTML DOM – Các đối tượng CONTROL của FORM
Một số thuộc tính & phương thức phổ biến
khác của control ListBox, ComboBox
Thuộc tính Giải thích
multiple Trả về và cài đặt thuộc tính có thể chọn nhiều option/item
THIẾT KẾ VÀ LẬP TRÌNH WEB
size Trả về và cài đặt số lượng dòng được thể hiện trong drop down list
selectedIndex Trả về và cài đặt option/item đang được lựa chọn trong danh sách
Phương
Giải thích
thức
size Trả về và cài đặt số dòng được hiển thị trong drop-down list
31
HTML DOM – Đối tượng DOM (Dom element)
Theo mô hình DOM, trong JavaScript tất cả các thẻ HTML được
thể hiện như 1 đối tượng DOM (DOM element)
Một số thuộc tính & phương thức chung của tất cả đối tượng
DOM:
Thuộc tính Giải thích
innerHTML lấy & gán thông tin & nội dung HTML bên trong
firstChild
parent
THIẾT KẾ VÀ LẬP TRÌNH WEB
Các thuộc tính để lấy & gán các element trong cây DOM
nextSibling
childNodes
createElement()
creatTextNode()
Các phương thức để quản lý (thêm, xóa, sửa) các
insertBefore()
element trong cây DOM
appendChild()
replaceChild()
32
HTML DOM – Duyệt và quản lý cấu trúc cây DOM
Hướng dẫn:
Google: access html dom tree
Gabriele Cecchetti, Dynamic HTML – part one,
Internet Software Techonology lectures, 2008
[file AccessDOMTRee trong thư mục ThamKhao]
33
Bài tập
1. Combo-box ngày tháng năm
2. Kiểm tra nhập tên, tuổi hợp lệ
3. Text-box nhập url để redirect đến url đó
4. Chọn combo-box thay đổi giá trị radio button
5. Chọn radio button disable và readonly 1 số
control
THIẾT KẾ VÀ LẬP TRÌNH WEB
34
THIẾT KẾ VÀ LẬP TRÌNH WEB Adobe Extension
35
THIẾT KẾ VÀ LẬP TRÌNH WEB
36
Visual CSS Quick Menu
Tham khảo
DHTML
http://www.w3schools.com/jsref/
Google, Google, Google !!!
37
Tham khảo
http://www.w3schools.com/js
http://www.w3schools.com/jsref
http://www.tizag.com/javascriptT/
THIẾT KẾ VÀ LẬP TRÌNH WEB
http://thuvienit.org
Google…. !!!
38
ĐẠI HỌC SÀI GÒN – KHOA CNTT
THỰC HÀNH
JavaScript & HTML DOM
GV: Tr ần Đình Nghĩa
tdnghia1977@gmail.com
39
Thực hành
40
THIẾT KẾ VÀ LẬP TRÌNH WEB BT_JavaScript_KiemTraDuLieuNhap
41
Yêu cầu cho Form nhập liệu
Phải nhập các textbox đánh dấu * (Tên đăng nhập, Mật khẩu và Gõ lại mật khẩu) 1
Mật khẩu tối thiểu 5 kí tự 0.5
Mật khẩu và Mật khẩu gõ lại phải trùng nhau 0.5
Có ít nhất 3 câu hỏi bí mật. Nếu người dùng chọn câu hỏi bí mật thì phải nhập câu
THIẾT KẾ VÀ LẬP TRÌNH WEB
2
trả lời. Nếu không chọn câu hỏi bí mật thì không được nhập câu trả lời.
Lưu ý làm đúng phần nhập ngày tháng năm sinh. Combo box tháng dùng Javascript
0.5
để chèn 12 tháng vào.
Khi hiển thị giới tính, mặc định chọn giới tính Nam 0.25
Phải chọn ít nhất 1 sở thích 0.25
Kiểm tra các điều kiện trên theo thứ tự từ trên xuống dưới. Nếu điều kiện nào không
thỏa thì có câu thông báo lỗi tương ứng. Nếu tất cả các điều kiện đều thỏa thì mới gửi 1
thông tin về server.
42