AJAX XMLHttpRequest
- Trang trước Giới thiệu AJAX
- Trang tiếp theo AJAX Suggest
Đối tượng XMLHttpRequest làm AJAX trở nên có thể.
XMLHttpRequest
Đối tượng XMLHttpRequest là chìa khóa của AJAX.
Đối tượng này đã có thể sử dụng từ khi Internet Explorer 5.5 và được phát hành vào tháng 7 năm 2000, nhưng trước khi bắt đầu thảo luận về AJAX và Web 2.0 vào năm 2005, đối tượng này không được nhận diện đầy đủ.
Tạo đối tượng XMLHttpRequest
Các trình duyệt khác nhau sử dụng phương pháp khác nhau để tạo XMLHttpRequest đối tượng.
Internet Explorer sử dụng ActiveXObject。
Các trình duyệt khác sử dụng tên XMLHttpRequest của đối tượng JavaScript built-in.
Để vượt qua vấn đề này, bạn có thể sử dụng đoạn mã đơn giản này:
var XMLHttp=null if (window.XMLHttpRequest) { XMLHttp=new XMLHttpRequest() } else if (window.ActiveXObject) { XMLHttp=new ActiveXObject("Microsoft.XMLHTTP") }
Giải thích mã:
- Đầu tiên tạo một đối tượng sử dụng làm XMLHttpRequest XMLHttp Biến. Đặt giá trị của nó là null.
- Sau đó kiểm tra window.XMLHttpRequest Đối tượng có thể sử dụng được. Trong các phiên bản mới của Firefox, Mozilla, Opera và Safari, đối tượng này là có thể sử dụng.
- Nếu có thể sử dụng, hãy sử dụng nó để tạo một đối tượng mới:XMLHttp=new XMLHttpRequest()
- Nếu không thể sử dụng, hãy kiểm tra window.ActiveXObject Có thể sử dụng được. Trong Internet Explorer phiên bản 5.5 và cao hơn, đối tượng này là có thể sử dụng.
- Nếu có thể, hãy sử dụng nó để tạo một đối tượng mới:XMLHttp=new ActiveXObject()
Ví dụ cải tiến
Một số nhà phát triển phần mềm ưa thích sử dụng phiên bản mới nhất và nhanh nhất của đối tượng XMLHttpRequest.
Dưới đây là ví dụ thử nghiệm để tải phiên bản mới nhất của "Msxml2.XMLHTTP", có thể sử dụng trong Internet Explorer 6, nếu không thể tải, sẽ quay lại "Microsoft.XMLHTTP", có thể sử dụng trong Internet Explorer 5.5 và các phiên bản sau.
function GetXmlHttpObject() { var xmlHttp=null; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) { // Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } } return xmlHttp; }
Giải thích mã:
- Đầu tiên tạo đối tượng được sử dụng làm đối tượng XMLHttpRequest XMLHttp Biến. Đặt giá trị của nó là null.
- Tạo đối tượng theo tiêu chuẩn web (Mozilla, Opera và Safari):XMLHttp=new XMLHttpRequest()
- Tạo đối tượng theo cách của Microsoft, có thể sử dụng trong Internet Explorer 6 và các phiên bản cao hơn:XMLHttp=new ActiveXObject("Msxml2.XMLHTTP")
- Nếu bắt lỗi, hãy thử phương pháp cũ hơn (Internet Explorer 5.5):XMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
Thông tin chi tiết về đối tượng XMLHttpRequest
Nếu bạn muốn đọc thêm về XMLHttpRequest, hãy truy cập Hướng dẫn AJAX。
- Trang trước Giới thiệu AJAX
- Trang tiếp theo AJAX Suggest