Form trong HTML




Các mẫu form trong HTML được yêu cầu khi bạn muốn thu thập một vài dữ liệu từ người sử dụng. Ví dụ, khi người sử dụng đăng ký, bạn có thể muốn thu thập thông tin như tên, địa chỉ email, thẻ tín dụng….

Một mẫu form sẽ nhận dữ liệu đầu vào từ site người sử dụng và sau đó sẽ thông báo nó tới các ứng dụng back-end như CGI, ASP Script hoặc PHP Script….

Có nhiều phần tử form có sẵn như các trường text, các trường textarea, menu, checkbox …

Thẻ <form> được sử dụng để tạo một Form trong HTML và thẻ này có cú pháp:

<form action="Script URL" method="GET|POST">
    các phần tử font, chẳng hạn như input, textarea ...
</form>

Các thuộc tính của thẻ form trong HTML

Ngoài các thuộc tính thông thường, sau đây là các thuộc tính của form hay sử dụng:

Thuộc tínhMiêu tả
actionỨng dụng quản trị back-end sẵn sàng để xử lý dữ liệu từ site khách.
methodPhương thức để tải dữ liệu lên. Thường sử dụng là GET và POST.
targetXác định cửa sổ hoặc frame để hiển thị kết quả. Thuộc tính có thể nhận các giá trị như _blank, _self, _parent….
enctype

Bạn sử dụng thuộc tính này để xác định cách mà trình duyệt mã hóa dữ liệu trước khi nó gửi tới Server. Các giá trị có thể nhận là:

  • application/x-www-form-urlencoded - Đây là phương thức tiêu chuẩn mà hầu hết các form sử dụng.

  • mutlipart/form-data - Nó được sử dụng khi bạn muốn tải lên dữ liệu nhị phân trong mẫu form của các file như ảnh, word….

Một số form hữu ích trong HTML

Có các kiểu kiểm soát form khác nhau mà bạn có thể sử dụng để thu thập dữ liệu:

  • Text Input

  • Checkbox

  • Radio Box

  • Select Box

  • File Select Box

  • Submit

  • ...

Text Input trong HTML

Có 3 kiểu Text Input được sử dụng trên form:

  • Text Input một dòng đơn - Sử dụng cho các mục mà yêu cầu chỉ một dòng của dữ liệu đầu vào của người sử dụng như các hộp tìm kiếm hoặc tên. Form này được tạo ra bằng cách sử dụng thẻ <input>.

  • Password Input - Đây cũng là một Text Input một dòng đơn nhưng nó giấu các ký tự ngay sau khi người sử dụng nhập nó. Form này được tạo ra bằng cách sử dụng thẻ <input>.

  • Text Input đa dòng - : Được sử dụng khi một người sử dụng được yêu cầu cung cấp thông tin mà có thể nhiều hơn một dòng. Form này được tạo ra bằng cách sử dụng thẻ <textarea>.

Text Input một dòng đơn trong HTML

Ví dụ

Dưới đây là ví dụ cơ bản của việc sử dụng Text Input chỉ có một dòng sử dụng để nhận tên và họ.

<!DOCTYPE html>
<html>
<head>
<title>Vi du Text Input trong HTML</title>
</head>
<body>
<form >
First name:  <input type="text" name="first_name" />
<br>
Last name:  <input type="text" name="last_name" />
</form>
</body>
</html>

Nó sẽ tạo ra kết quả sau:

First name:
Last name:

Các thuộc tính

Dưới đây là danh sách các thuộc tính của thẻ <input> để tạo các trường văn bản:

Thuộc tínhMiêu tả
typeXác định kiểu của dữ liệu nhập vào và với Text Input thì thuộc tính này sẽ được thiết lập là text.
nameXác định tên cho trường được gửi tới Server để xác định và nhận giá trị đó.
valueXác định giá trị đầu tiên của form.
sizeCho phép xác định độ rộng các ký tự của Text Input.
maxlengthCho phép xác định số lượng ký tự lớn nhất mà người sử dụng có thể nhập vào Text Input.

Password Input trong HTML

Tương tự như Input đơn dòng, nhưng nó giấu các ký tự ngay sau khi người sử dụng nhập mật khẩu vào. Form này được tạo ra bằng cách sử dụng thẻ <input> và thuộc tính type được thiết lập là password.

Ví dụ

Sau đây là một ví dụ đơn giản về Password Input được sử dụng để nhận mật khẩu người dùng:

<!DOCTYPE html>
<html>
<head>
<title>Ví dụ Password Input trong HTML</title>
</head>
<body>
<form >
User ID :  <input type="text" name="user_id" />
<br>
Password:  <input type="password" name="password" />
</form>
</body>
</html>

Kết quả sẽ là:

User ID :  
Password:

Các thuộc tính

Dưới đây là danh sách các thuộc tính của thẻ <input> để tạo trường mật khẩu:

Thuộc tínhMiêu tả
typeXác định kiểu của dữ liệu nhập vào và với Password Input thì thuộc tính này được thiết lập là password.
nameXác định tên trường được gửi tới Server để xác định và nhận giá trị.
valueXác định giá trị dữ liệu đầu vào ban đầu của form.
sizeXác định độ rộng của các ký tự
maxlengthXác định số lượng ký tự lớn nhất mà người sử dụng có thể nhập vào form.

Text Input đa dòng trong HTML

Form này được tạo ra bằng cách sử dụng thẻ <textarea>, nó được sử dụng khi người sử dụng được yêu cầu cung cấp thông tin chi tiết mà có độ dài nhiều hơn một dòng.

Ví dụ

Dưới đây là ví dụ đơn giản về Text Input đa dòng:

<!DOCTYPE html>
<html>
<head>
<title>Vi du Text Input đa dong</title>
</head>
<body>
<form>
Mieu ta: <br />
<textarea rows="5" cols="50" name="description">
Ban nhap phan mieu ta tai day...
</textarea>
</form>
</body>
</html>

Nó sẽ tạo kết quả sau:

Mieu ta:

Các thuộc tính

Sau đây là các thuộc tính của thẻ <textarea>.

Thuộc tínhMiêu tả
nameCung cấp tên cho trường được gửi tới Server để xác định và nhận giá trị.
rowsXác định số hàng.
colsXác định số cột.

Checkbox trong HTML

Checkbox được sử dụng khi có nhiều hơn một tùy chọn được yêu cầu để chọn. Checkbox cũng được tạo ra bằng cách sử dụng thẻ <input> nhưng thuộc tính type được thiết lập là checkbox.

Ví dụ

Sau đây là một ví dụ cho một Form có hai Checkbox:

<!DOCTYPE html>
<html>
<head>
<title>Vi du Checkbox trong HTML</title>
</head>
<body>
<form>
<input type="checkbox" name="maths" value="on"> Maths
<input type="checkbox" name="physics" value="on"> Physics
</form>
</body>
</html>

Nó sẽ tạo ra một Form sau:

Maths Physics

Các thuộc tính

Sau đây là các thuộc tính của thẻ <checkbox>.

Thuộc tínhMiêu tả
typeXác định kiểu của dữ liệu nhập vào và với Checkbox thì thuộc tính này được thiết lập là checkbox.
nameXác định tên trường được gửi tới Server để xác định và nhận giá trị.
valueCác giá trị sẽ được sử dụng nếu Checkbox được chọn.
checkedThiết lập là checked nếu bạn muốn chọn nó theo mặc định.

Radio Button trong HTML

Radio Button được sử dụng khi ngoài rất nhiều các tùy chọn, chỉ có một tùy chọn được yêu cầu để chọn. Radio Button được tạo ra bằng cách sử dụng thẻ <input> và thuộc tính type được thiết lập là radio.

Ví dụ

Dưới đây là ví dụ cho một Form với 2 Radio Button:

<!DOCTYPE html>
<html>
<head>
<title>Vi du Radio Box trong HTML</title>
</head>
<body>
<form>
<input type="radio" name="subject" value="maths"> Maths
<input type="radio" name="subject" value="physics"> Physics
</form>
</body>
</html>

Kết quả là:

Maths Physics

Các thuộc tính

Sau đây là các thuộc tính cho Radio Button.

Thuộc tínhMiêu tả
typeXác định kiểu dữ liệu nhập vào và với Radio Button thì thuộc tính này sẽ được thiết lập là radio.
nameXác định tên trường được gửi tới Server để xác định và nhận giá trị.
valueXác định giá trị sẽ được sử dụng nếu Radio Button được chọn.
checkedThiết lập checked nếu bạn muốn chọn nó theo mặc định.

Select Box trong HTML

Một Select Box cung cấp danh sách liệt kê từ trên xuống (hộp drop down) các tùy chọn đa dạng trong một form, và tại đó người sử dụng có thể chọn một hoặc nhiều lựa chọn.

Ví dụ

Dưới đây là một ví dụ về một Form với một hộp drop down.

<!DOCTYPE html>
<html>
<head>
<title>Vi du Select Box trong HTML</title>
</head>
<body>
<form>
<select name="dropdown">
<option value="Maths" selected>Maths</option>
<option value="Physics">Physics</option>
</select>
</form>
</body>
</html>

Đoạn mã trên sẽ cho kết quả sau:

Các thuộc tính

Sau đây là danh sách các thuộc tính quan trọng của thẻ <select>:

Thuộc tínhMiêu tả
nameXác định tên được gửi tới Server để xác định và nhận giá trị.
sizeĐược sử dụng để hiển thị một hộp danh sách có thanh cuốn.
multipleNếu thiết lập là multiple, thì cho phép người sử dụng lựa chọn nhiều hơn một mục trên menu.

Bảng dưới là các thuộc tính quan trọng của thẻ <option>:

Thuộc tínhMiêu tả
valueGiá trị được sử dụng nếu một lựa chọn trong hộp được chọn.
selectedXác định tùy chọn này sẽ là giá trị được lựa chọn đầu tiên khi trang web được tải.
labelGán nhãn cho tùy chọn

File Upload Box trong HTML

Nếu bạn muốn cho phép một người sử dụng tải một file lên trang của bạn, bạn sẽ cần sử dụng một File Upload Box. File Upload Box được tạo ra bằng cách sử dụng phần tử <input> và thuộc tính type là để thiết lập là file.

Ví dụ

Ví dụ dưới đây về một Form với một File Upload Box:

<!DOCTYPE html>
<html>
<head>
<title>Vi du File Upload Box trong HTML</title>
</head>
<body>
<form>
<input type="file" name="fileupload" accept="image/*" />
</form>
</body>
</html>

Kết quả được tạo ra như sau:

Các thuộc tính

Bảng dưới là danh sách các thuộc tính quan trọng của File Upload Box:

Thuộc tínhMiêu tả
nameXác định tên trường được gửi tới Server để xác nhận và nhận giá trị.
acceptXác định kiểu của file mà Server chấp nhận.

Button trong HTML

Có nhiều cách trong HTML để tạo các nút có thể nhấn vào được (clickable). Bạn cũng có thể sử dụng thẻ <input> để tạo các nút này bởi thiết lập thuộc tính typebutton. Thuộc tính type có thể nhận các giá trị sau:

KiểuMiêu tả
submitTạo một nút mà tự động chấp nhận một form.
resetTạo một nút mà tự động reset một form về giá trị ban đầu.
buttonTạo một nút được sử dụng để kích hoạt một Client-side khi người sử dụng nhấn vào nút đó.
imageTạo một nút có thể nhấn nhưng chúng ta sử dụng một hình ảnh để làm nền cho nút này.

Ví dụ

Dưới đây là ví dụ về một Form với 3 kiểu Button:

<!DOCTYPE html>
<html>
<head>
<title>Vi du button trong HTML</title>
</head>
<body>
<form>
<input type="submit" name="submit" value="Submit" />
<input type="reset" name="reset"  value="Reset" />
<input type="button" name="ok" value="OK"  />
<input type="image" name="imagebutton" src="../html/images/logo3.png" />
</form>
</body>
</html>

Đoạn code trên sẽ tạo ra kết quả sau:

Hidden Form trong HTML

Hidden Form được sử dụng để ẩn dữ liệu bên trong trang và sau đó có thể được đẩy tới Server. Form này ẩn bên trong code và không xuất hiện trên các trang. Ví dụ, một Hidden Form được sử dụng để giữ số trang hiện tại. Khi một người sử dụng nhấn vào trang tiếp theo (next page) thì giá trị của Hidden Form sẽ được gửi tới Server và tại đây nó sẽ quyết định trang nào sẽ được hiển thị tiếp theo trang hiện tại.

Ví dụ

Dưới đây là đoạn code về cách sử dụng của Hidden Form:

<!DOCTYPE html>
<html>
<head>
<title>Vi du Hidden Form trong HTML</title>
</head>
<body>
<form>
<p>Day la trang so 10</p>
<input type="hidden" name="pagename" value="10" />
<input type="submit" name="submit" value="Submit" />
<input type="reset" name="reset"  value="Reset" />
</form>
</body>
</html>

Nó sẽ tạo ra kết quả sau:

Day la trang so 10