Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
MỤC LỤC
I. Lý thuyết 5
1.1 Giới thiệu 5
1.2 Danh sách các phần tử HTML thường dùng 5
II. Bài tập thực hành 7
1. Yêu cầu: 7
2. Hướng dẫn 7
3. Minh hoạ mẫu 8
4. Ghi chú 9
BÀI SỐ 2: Tạo trang web động với DHTML và JavaScript 10
I. Lý thuyết 10
1. Đưa câu lệnh javascript vào trang web 10
2. Đưa câu lệnh javascript vào từ một file riêng biệt 11
3. Truy cập các phần tử HTML bằng câu lệnh Javascript 12
4. Xây dựng hàm trong Javascript 13
5. Một số hàm thông dụng của Javascript 14
II. Thực hành 14
1. Yêu cầu 14
2. Hướng dẫn 14
3. Minh hoạ mẫu 14
4. Ghi chú 17
BÀI 3: THAY ĐỔI NỘI DUNG TRANG WEB BẰNG CSS VÀ JS ĐỊNH
DẠNG TRANG WEB VỚI CSS 17
I. Lý thuyết 17
1. Định dạng CSS ngay trong định nghĩa phần tử (Gọi là Inline) 17
2. Định dạng CSS thông qua lớp 18
II. Thực hành 20
1. Yêu cầu 20
2. Hướng dẫn 20
3. Minh hoạ mẫu 21
I. Lý thuyết 53
1. Request Object 53
2 Response Object 56
3 Server Object 57
4 Session Object 58
5 Application Object 58
II. Thực hành 59
1. Bài 1: Tạo một trang Login 59
2. Bài 2: Tạo một trang đếm số lượng người truy cập 63
BÀI 7: CÔNG NGHỆ ADO.NET 65
I. Lý thuyết 65
1. Giới thiệu chung 65
2. Kiến trúc của ADO.NET 66
3. Các lớp thao tác với CSDL: Connection, Command,… 67
II. THỰC HÀNH 79
1. Tạo cơ sở dữ liệu 79
2. Nhập dữ liệu cho bảng 80
3. Hiển thị dữ liệu trong bảng lên trình duyệt 83
4. Cập nhật dữ liệu bằng DataSet và DataAdapter 84
BÀI 8: Tìm hiểu và ứng dụng cơ chế Data Binding 86
I. Lý thuyết 86
1 Giới thiệu DataBinding 86
2 Data Binding 86
3. Các điều khiển Data Source (Data source controls) 90
II. THỰC HÀNH 98
BÀI 9: Làm việc với GridView 102
I. Lý thuyết 102
1. Giới thiệu tổng quan 102
2. Tìm hiểu lớp GridView 102
3. Các tính năng hỗ trợ của GridView 106
Website :
TÀI LIỆU
KHÓA HỌC LẬP TRÌNH ASP.NET
Biên soạn:
- Nguyễn Minh Quý
- Lê Quang Lợi
HƯNG YÊN 7/2009
V2.0 – ; ; Tel: 03213-713.319
P.4
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
PHẦN I
Cơ bản về HTML, DHTML, JavaScript
BÀI SỐ 1: Tạo trang web với HTML
Mục tiêu: Kết thúc bài học, sinh viên có thể
Tạo được trang web tĩnh trên notepad/ HTML Editor
Định dạng nội dung trang web bằng các phần tử HTML cơ bản
Thao tác được với phần tử bảng (Table), <TR>, <TD>,
Nội dung
I. Lý thuyết
1.1 Giới thiệu
Một trang web khi được hiển thị trên trình duyệt (IE; FireFox; Netscape, ) về bản
chất được tạo từ các cặp thẻ (tag) đặc biệt. Các thẻ này sẽ chỉ dẫn cho trình duyệt
biết nên hiển thị nội dung như thế nào. Ví dụ cặp thẻ <b> </b> sẽ chỉ dẫn cho
trình duyệt phải in đậm nội dung bên trong, v.v Mỗi cặp thẻ như vậy gọi là cặp
thẻ HTML (Hyper Text Markup Language).
Vì vậy, đối với mỗi lập trình viên web, trước khi muốn xây dựng ứng dụng web
thực thụ thì không chỉ phải hiểu rất rõ những cặp thẻ HTML (ít nhất là những cặp
thẻ cơ bản) mà còn phải biết cách Code (tạo) các cặp thẻ này.
1.2 Danh sách các phần tử HTML thường dùng
Dưới đây là danh sách các phần tử HTML cơ bản và cách tạo ra tương ứng bằng cặp
Yes
✘
Nguyn Vn A
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
Phân cách <hr>
xuống
dòng
<br>
div
Là một phần tử chứa
các phần tử khác. Khi
ẩn/ hiện/ di chuyển
phần tử div thì các
phần tử khác cũng
ẩn/hiện/di chuyển
theo
<div>
<input type="text" value="" name = "txtHoTen">
<input type ="button" value="OK" name="btnOK">
</div>
Table
11 12
21 22
<Table border = "1">
<tr>
<td> 11 </td>
<td> 12 </td>
</tr>
<tr>
<td> 21 </td>
<td >1</td> <td>2</td>
</tr>
</table>
a www.aptech.utehy.vn <a href=""> www.aptech.utehy.vn </a>
img <img src="utehylogo.png" alt ="Logo UTEHY">
Chú ý: Thuộc tính đặt cho các phần tử được viết dưới dạng: <Tên thuộc tính>=<giá
trị>. Phần <giá trị> được đặt trong cặp dấu nháy đơn hoặc cặp dấu nháy kép.
V2.0 – ; ; Tel: 03213-713.319
P.6
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
II. Bài tập thực hành
1. Yêu cầu:
Tạo một trang web để hiển thị nội dung như sau:
Giao diện trang web cần tạo
2. Hướng dẫn
- Sử dụng bảng mô tả các phần tử ở trên để tạo trang theo yêu cầu.
V2.0 – ; ; Tel: 03213-713.319
P.7
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
- Vào trình soạn thảo web của Visual Studio 2008 và tạo dự án web, sau đó mở trang
Default.aspx và viết các thẻ HTML.
- Để chạy (mở) trang web vừa tạo, có thể nhấn F5 hoặc click chuột phải trong trang soạn
thảo (hoặc tệp Default.aspx bên panel phải), sau đó chọ "View in Browser".
3. Minh hoạ mẫu
Default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<html xmlns=" /><head runat="server">
<title>Bài thực hành số 1 - Hưng Yên Aptech</title>
</head>
<body>
<option value ="OTHER">Nơi khác</option>
</select>
<br />
Điện thoại:
<textarea rows ="3" cols ="20" id ="txtTelephone"> </textarea>
Số Fax: <input type ="text" id ="txtFaxNumber" />
<br />
V2.0 – ; ; Tel: 03213-713.319
P.8
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
Địa chỉ website: <input type ="text" id ="txtHomepage" size ="50" />
<hr />
<input type ="reset" value ="Xoá (reset form)" />
<input type ="submit" value ="Thêm mới" />
<br />
<hr />
<h3>Danh sách nhà cung cấp hiện có</h3>
<table border ="1">
<tr>
<th>Mã NCC</th>
<th>Tên NCC</th>
<th>Địa chỉ</th>
<th>Homepage</th>
</tr>
<tr>
<td>1</td>
<td>Công ty FPT</td>
<td>Láng Hạ - Ba Đình</td>
<td><a href =""> www.fpt.vn</a></td>
</tr>
BÀI SỐ 2:
Tạo trang web động với DHTML và JavaScript
Mục tiêu: Kết thúc bài thực này, người học có thể
Truy xuất các đối tượng trình duyệt và các phần tử HTML bằng JavaScript.
Tạo trang web đăng ký có xử lý tính hợp lệ của dữ liệu nhập vào.
Nội dung:
I. Lý thuyết
Một trang web được tạo ở bài trước được gọi là một trang web tĩnh (Static webpage - tức
là: Nội dung của nó một khi đã được tạo ra thì luôn luôn hiển thị giống nhau đối với mọi
người dùng ở mọi thời điểm). Tuy nhiên, ngày nay do nhu cầu của người dùng và của ứng
dụng nên một trang web phải có khả năng động (Dynamic webpage - tức là: nội dung của
trang web có thể hiển thị, ứng xử khác nhau ứng với người sử dụng hoặc tình huống khác
nhau ). Khả năng "động" đó có thể thực hiện ở bên phía trình duyệt hoặc phía server. Nếu
trang web cho phép thực hiện thay đổi (bằng ngôn ngữ kịch bản như VBScript,
JavaScript ) bên phía trình duyệt, gọi là trang DHTML (Dynamic HTML); còn nếu trang
web thực hiện xử lý bên phía server (bằng ngôn ngữ C#, VB.NET, ASP, PHP, Perl, ) gọi
là các trang động phía server (Active Server Page). Trong tài liệu này chúng ta sẽ tìm hiểu
cả hai dạng web động ở trên, còn trong bài này ta sẽ tìm hiểu trang DHTML với Javascript
(JS).
1. Đưa câu lệnh javascript vào trang web
1.1 Đưa câu lệnh javascript vào luồng xử lý ngay khi trang web được mở.
Để đưa các câu lệnh Javascript vào trang web và yêu cầu trình duyệt thực thi ngay khi trang
web được mở, ta chỉ cần đặt các câu lệnh JS ngay trong các cặp thẻ <Script> </script>
nhưng không hàm.
Ví dụ: Hiển thị một lời chào và thông báo ngày hiện tại khi trang web được mở.
<html>
<body>
<form id="form1">
<script language="javascript" type ="text/javascript">
var d = new Date ();
</html>
*** Thực tế, rất ít khi người ta đưa quá nhiều câu lệnh vào ngay bên trong sự kiện như ở
trên, mà thường đưa các câu lệnh này vào một hàm, sau đó viết câu lệnh gọi hàm trong sự
kiện.
2. Đưa câu lệnh javascript vào từ một file riêng biệt.
Trong các ứng dụng lớn, số hàm, câu lệnh JS cũng sẽ rất lớn, vì vậy nếu để các hàm này
ngay trong file HTML như ở trên sẽ khó bảo trì và khiến cho việc chia sẻ gặp khó khăn. Để
khắc phục hạn chế này, người ta thường đặt các hàm JS trong một tệp riêng, sau đó chỉ việc
gọi các hàm này trong trang HTML.
Ví dụ: Tạo một file chứa các hàm JS Cộng và trừ trong một file có tên là MyMath.js, sau
đó gọi các hàm này trong trang web có tên là TestJS.htm.
Việc "nhúng" các trang *.JS vào trang html thông qua thuộc tính "src".
File MyMath.js
//Hàm cộng hai số nguyên
function Cong(a,b)
{
return a+b;
}
//Hàm trừ hai số nguyên
function Tru(a,b)
{
return a-b;
}
V2.0 – ; ; Tel: 03213-713.319
P.11
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
File TestJS.htm
<html>
<head runat="server">
<title>Lession 02</title>
}
</script>
</head>
<body>
<form name="form1">
<h3>Chương trình tính tổng</h3>
V2.0 – ; ; Tel: 03213-713.319
P.12
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
Số hạng 1: <input type="text" id ="txtSH1" /> <br />
Số hạng 2: <input type="text" id ="txtSH2" /> <br />
Tổng: <input type="text" id ="txtTong" /> <br />
<input type="button" onclick ="ThucHien();" value ="Tính" />
</form>
</body>
</html>
*** Theo ví dụ ở trên, để truy xuất (tham chiếu) đến phần tử txtSH1 và txtSH2 ta viết:
document.form1.txtSH1 và document.form1.txtSH2.
Còn để truy xuất đến thuộc tính value (chứa nội dung của textbox), ta chỉ cần thêm thuộc
tính Value vào sau tham chiếu, cụ thể viết: document.form1.txtSH1.value
Ngoài ra có thể viết theo cách khác như sau:
<script language="javascript">
function ThucHien()
{
var a = parseFloat(document.forms[0].txtSH1.value);
var b = parseFloat(document.forms[0].txtSH2.value);
document.getElementById("txtTong").value = a+b;
}
</script>
<h3>Chương trình tính luỹ thừa</h3>
Cơ số: <input type="text" id ="txtX" /> <br />
Số mũ: <input type="text" id ="txtY" /> <br />
Kết quả (X<sup>Y</sup>): <input type="text" id ="txtXMuY" /><br />
<input type="button" onclick ="ThucHien();" value ="Tính" />
</form>
</body>
</html>
5. Một số hàm thông dụng của Javascript
- Hàm write(<Biểu thức cần in ra màn hình>): Để in kết quả ra trang web.
- Hàm alert(<Biểu thức>): Thông báo trong một hộp thoại riêng.
- Hàm prompt(<Biểu thức>): Để yêu cầu nhập thông tin từ người dùng.
- Hàm confirm(<thông báo>): Yêu cầu người dùng xác nhận.
- Hàm open(<URL>): để mở một trang web.
- Hàm xử lý toán học: như Sin, cos, abs, pow, nằm trong đối tượng Math.
- Hàm xử lý xâu: SubStr, Length, toLower có sẵn đối với mỗi xâu.
- Hàm chuyển xâu sang số nguyên, thực: pareInt(<Xâu>); pareFloat(<Xâu>).
- Hàm tính giá trị của một biểu thức: eval(<Xâu chứa biểu thức>).
II. Thực hành
1. Yêu cầu
Sắp xếp lại trang web trong bài thực hành 1 dưới dạng bảng sau đó viết thủ tục xử lý sự
kiện click của nút submit , theo yêu cầu sau đây:
- Nếu dữ liệu hợp lệ thì thực hiện submit
- Nếu dữ liệu nhập vào không hợp lệ thì thông báo cho người dùng và không thực
hiện submit.
Dữ liệu nhập vào được gọi là không hợp lệ nếu gặp một trong các trường hợp sau:
- Tên nhà cung cấp để trống
- Thành phố không được chọn
- Điện thoại chứa ký tự không phải là số
- Địa chỉ website không đúng.
return false;
}
var homepage=document.getElementById("txtHomepage").value.toLowerCase()
if (homepage.indexOf("http://")==-1)
{
alert ("Địa chỉ website không đúng, hãy nhập theo dạng http://");
return false;
}
return true; //dữ liệu nhập hợp lệ.
}
</script>
</head>
<body>
<br />
<h1> PHẦN MỀM QUẢN LÝ BÁN HÀNG</h1>
<h2> NHẬP THÔNG TIN NHÀ CUNG CẤP </h2>
<hr />
<form id="form1" runat="server">
<table border="0">
<tr>
<td>Tên nhà cung cấp:</td>
<td><input type ="text" id ="txtNCC" size="30" /></td>
</tr>
<tr>
<td>Người đại diện:</td>
<td><input type ="text" id ="txtContactName" />
Chức vụ: <input type ="text" id ="txtContactTitle" />
</td>
</tr>
<tr>
<option value ="VN" selected>Việt Nam</option>
<option value ="LAO" >Lào</option>
<option value ="CAMPUCHIA">Campuchia</option>
<option value ="OTHER">Nơi khác</option>
</select>
</td>
</tr>
<tr>
<td>Điện thoại:</td>
<td><input type="text" id ="txtTelephone" />
Số Fax: <input type ="text" id ="txtFaxNumber" />
</td>
</tr>
<tr>
<td>Địa chỉ website:</td>
<td><input type ="text" id ="txtHomepage" size ="50" /></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table>
<hr />
<input type ="reset" value ="Xoá (reset form)" />
<input type ="submit" value ="Thêm mới" onclick ="return KiemTraDuLieu();" />
<br />
<hr />
<h3>Danh sách nhà cung cấp hiện có</h3>
<table border ="1">
<tr>
4. Ghi chú
Có thể tra cứu các thuộc tính, phương thức, sự kiện của các phần tử (Select, command,
checkbox, ) tại:
- www.w3schools.com
-
-
- hoặc bản mềm đi kèm khóa học.
BÀI 3:
THAY ĐỔI NỘI DUNG TRANG WEB BẰNG CSS VÀ JS
ĐỊNH DẠNG TRANG WEB VỚI CSS
Mục tiêu sau khi kết thúc bài học
Trình bày được cách định nghĩa CSS kiểu dòng và lớp.
Sử dụng CSS và bảng thuộc tính CSS để định dạng cho phần tử bất kỳ.
Định dạng lại trang thông tin sản phẩm bằng CSS, đảm bảo tính mỹ thuật và kỹ
thuật.
I. Lý thuyết
Trước đây, người ta thường dùng các cú pháp cũ để định dạng các phần tử trên trang web
(ví dụ <b> để in đậm, <font-face> để đặt font chữ, v.v ). Tuy nhiên cách đặt trước đây có
nhiều điểm hạn chế vì vậy hiện nay trong lập trình chủ yếu sử dụng cú pháp định dạng mới
gọi là CSS (Cascading Style Sheet = bảng định kiểu).
Có nhiều cách định kiểu cho phần tử web bằng CSS, tuy nhiên thực tế hay sử dụng cách
định dạng sau đây:
1. Định dạng CSS ngay trong định nghĩa phần tử (Gọi là Inline)
Với cách này, khi muốn định dạng cho một phần tử/ thẻ bất kỳ nào đó người ta định nghĩa
CSS ngay trong phần tử/ thẻ đó.
Ví dụ1: Định nghĩa nội dung thẻ H2 có màu chữ đỏ, font chữ nghiêng như sau:
V2.0 – ; ; Tel: 03213-713.319
P.17
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
<h2 style="color:Red; font-style:italic">Màu đỏ, chữ nghiêng</h2>
dung mục lục của một cuốn tài liệu.
Lớp MỤC_LỚNcó 2 thuộc tính: Màu chữ đậm, cỡ chữ 16
Lớp MỤC_NHỎ có 3 thuộc tính: Màu chữ đậm, in nghiêng, cỡ chữ 14
<html>
<head>
<title>CSS</title>
<style type="text/css">
.MỤC_LỚN
{
font-weight:bold;
font-size:16pt;
}
V2.0 – ; ; Tel: 03213-713.319
P.18
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
.MỤC_NHỎ
{
font-weight:bold;
font-size:14pt;
font-style:italic;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<h1>Mục lục</h1>
<span class="MỤC_LỚN">Bài 1: Tạo trang web tĩnh với HTML</span> <br />
<span class = "MỤC_NHỎ">1.1 Lý thuyết</span> <br />
<span class = "MỤC_NHỎ">1.2 Thực hành</span> <br /><br />
II. Thực hành
1. Yêu cầu
Viết lại trang nhập thông tin nhà cung cấp ở các bài học trước nhưng sử dụng CSS để định
nghĩa lại các phần tử.
Kết quả sau cùng cần đạt tới ít nhất phải như sau:
Giao diện kết quả
2. Hướng dẫn
- Sử dụng định dạng CSS tại dòng và tạo lớp CSS.
- Các phần tử có cùng thuộc tính thì nên tạo một lớp riêng, sau đó áp dụng lớp này cho thẻ
bằng thuộc tính Classs= <Tên lớp>.
- Tra cứu bảng CSS trong bản mềm đi kèm hoặc trang .www.w3schools.com
V2.0 – ; ; Tel: 03213-713.319
P.20
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
3. Minh hoạ mẫu
<html>
<head>
<title>CSS</title>
<style type="text/css">
.Nhãn
{
font-style:italic;
font-size:12pt;
color:Gray;
text-align:right;
width:150px;
padding-right:5px;
}
.Bảng
{
<span style="font-size:18pt; width:600px">NHẬP THÔNG TIN NHÀ CC</span>
</td>
</tr>
<tr>
<td class="Nhãn">
Tên Nhà CC
V2.0 – ; ; Tel: 03213-713.319
P.21
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
</td>
<td>
<input type="text" style="width:450px" />
</td>
</tr>
<tr>
<td class="Nhãn" >
Người đại diện
</td>
<td>
<input type ="text" id="txtNguoiDaiDien" style="width:300px" />
</td>
</tr>
<tr>
<td class="Nhãn">
Chức vụ
</td>
<td>
<input type ="text" id="txtChucVu" style="width:300px" />
</td>
</tr>
<option value ="OTHER">Nơi khác</option>
</select>
Vùng: <input type ="text" id ="txtRegion" style="width:150px" />
</td>
V2.0 – ; ; Tel: 03213-713.319
P.22
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
</tr>
<tr>
<td class="Nhãn">
Mã bưu điện:
</td>
<td>
<input type ="text" id ="txtPostalCode" style="width:150px"/>
</td>
</tr>
<tr>
<td class="Nhãn">
Quốc gia:
</td>
<td>
<select id ="lstCountry" size ="1">
<option value ="VN" selected>Việt Nam</option>
<option value ="LAO">Lào</option>
<option value ="CAMPUCHIA">Campuchia</option>
<option value ="OTHER">Nơi khác</option>
</select>
</td>
</tr>
<tr>
<tr>
V2.0 – ; ; Tel: 03213-713.319
P.23
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Trung tâm Hưng Yên Aptech
<th class="TiêuĐềNCC">Mã NCC</th>
<th class="TiêuĐềNCC">Tên NCC</th>
<th class="TiêuĐềNCC">Địa chỉ</th>
<th class="TiêuĐềNCC">Homepage</th>
</tr>
<tr>
<td style="text-align:center; border-right:solid 1px gray">1</td>
<td class="CạnhPhải">Công ty FPT</td>
<td class="CạnhPhải">Láng Hạ - Ba Đình</td>
<td class="CạnhPhải"><a href =""> www.fpt.vn</a></td>
</tr>
<tr>
<td style="text-align:center; border-right:solid 1px gray">2</td>
<td class="CạnhPhải">Công ty CMC</td>
<td class="CạnhPhải">Hàn Thuyên - Hai Bà Trưng</td>
<td class="CạnhPhải"><a href =""> www.cmc.vn</a></td>
</tr>
<tr>
<td style="text-align:center; border-right:solid 1px gray">3</td>
<td class="CạnhPhải">Công ty Trần Anh</td>
<td class="CạnhPhải">Giảng võ - Ba Đình</td>
<td class="CạnhPhải"><a href="">www.trananh.vn</a></td>
</tr>
</table>
</div>
</form>
Để đọc hay thay đổi nội dung hay thuộc tính của phần tử bất kỳ thì điều cần làm trước tiên
là phải tham chiếu đến phần tử đó. Với mỗi trình duyệt khác nhau có thể có các cách khác
nhau, tuy nhiên cách truy cập sau đây tương thích với hầu hết các trình duyệt.
Để tham chiếu đến một phần tử, có thể dùng 2 cách phổ biến sau:
1.1 Dùng hàm getElementById("Giá trị thuộc tính id của phần tử")
Ví dụ, có phần tử: <h1 id="TieuDe"> Chương I </h1>. Nếu muốn tham chiếu (truy xuất)
đến phần tử H1 này, ta viết: document.getElementById("TieuDe"). Khi đã truy xuất đến
phần tử nào đó thì ta hoàn toàn có thể đọc hoặc thay đổi nội dung/ thuộc tính của nó.
1.2 Dùng hàm getElementsByTag("Tên của thẻ").
Hàm này trả về một mảng chứa các phần tử có cùng loại/ tên (thẻ) nằm trong phần tử. Chú
ý: bất kỳ phần tử nào cũng có phương thức getElementByTag, vì vậy khi ta viết
document.getElementsByTag sẽ trả về các phần tử nằm trong document, nếu ta viết
form1.getElementsByTag thì trả về các phần tử nằm trong form, v.v
V2.0 – ; ; Tel: 03213-713.319
P.25
padding-bottom
Margin-left
border-right