Thuộc tính acceptCharset của Form liên kết với thuộc tính accept-charset của phần tử <form>. Dùng để đặt hoặc lấy tập ký tự (character encoding) mà form chấp nhận khi submit. Trả về chuỗi mã hóa ký tự. Nếu không chỉ định, trả về "UNKNOWN" (ngụ ý dùng mã hóa của tài liệu hiện tại).
Cú pháp
Đặt acceptCharset:
formObject.acceptCharset = character-set
- character-set: Danh sách mã hóa ký tự phân tách bằng dấu chấm phẩy hoặc dấu cách. Giá trị phổ biến:
UTF-8,ISO-8859-1.
Ví dụ
Ví dụ thay đổi mã hóa ký tự của form từ UTF-8 sang ISO-8859-1:
<!DOCTYPE html>
<html>
<head>
<style>
form {
border: 2px solid blue;
margin: 2px;
padding: 4px;
}
</style>
<script>
function changeEncoding() {
document.getElementById("FORM1").acceptCharset = "ISO-8859-1";
document.getElementById("Sample").innerHTML = "Bộ ký tự giờ là ISO-8859-1 thay vì UTF-8 cho form này";
}
</script>
</head>
<body>
<form id="FORM1" accept-charset="UTF-8">
<label>Tên đăng nhập <input type="text" name="usrN"></label><br><br>
<label>Mật khẩu <input type="password" name="pass"></label>
</form>
<p>Nhấn nút để đổi mã hóa ký tự form từ UTF-8 sang ISO-8859-1</p>
<button onclick="changeEncoding()">ĐỔI MÃ HÓA</button>
<p id="Sample"></p>
</body>
</html>
Kết quả
Ban đầu form có accept-charset="UTF-8".
Sau khi nhấn "ĐỔI MÃ HÓA", thông báo: "Bộ ký tự giờ là ISO-8859-1 thay vì UTF-8 cho form này".
Giải thích
- Form
id="FORM1"có sẵnaccept-charset="UTF-8", chứa 2 trường input. - Nút "ĐỔI MÃ HÓA" gọi hàm
changeEncoding(). - Hàm lấy form, đặt
.acceptCharset = "ISO-8859-1"(mã hóa Latin-1). - Hiển thị thông báo xác nhận thay đổi.