07/09/2018, 15:23

Tìm hiểu ví dụ về AJAX XML

AJAX có thể được sử dụng cho giao tiếp tương tác với một tệp XML. Ví dụ về AJAX XML Ví dụ sau sẽ minh hoạ cách một trang web có thể lấy thông tin từ một tệp tin XML với AJAX: Giải thích ví dụ Khi người dùng nhấp vào nút “Get CD Info” ở trên, ...

AJAX có thể được sử dụng cho giao tiếp tương tác với một tệp XML.

Ví dụ về AJAX XML

Ví dụ sau sẽ minh hoạ cách một trang web có thể lấy thông tin từ một tệp tin XML với AJAX:

Giải thích ví dụ

Khi người dùng nhấp vào nút “Get CD Info” ở trên, hàm loadDoc() được thực thi. Hàm loadDoc() tạo ra một đối tượng XMLHttpRequest, thêm hàm sẽ được thực hiện khi đáp ứng của máy chủ đã sẵn sàng và gửi yêu cầu tới máy chủ.

Khi đáp ứng của máy chủ đã sẵn sàng, một bảng HTML được xây dựng, các node (phần tử) được trích ra từ tệp tin XML và cuối cùng là cập nhật phần tử “demo” bằng bảng HTML đầy dữ liệu XML:

LoadXMLDoc()

function loadDoc() {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
    myFunction(this);
    }
  };
  xhttp.open("GET", "cd_catalog.xml", true);
  xhttp.send();
}
function myFunction(xml) {
  var i;
  var xmlDoc = xml.responseXML;
  var table="<tr><th>Artist</th><th>Title</th></tr>";
  var x = xmlDoc.getElementsByTagName("CD");
  for (i = 0; i <x.length; i++) { 
    table += "<tr><td>" +
    x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue +
    "</td><td>" +
    x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue +
    "</td></tr>";
  }
  document.getElementById("demo").innerHTML = table;
}

XML File

Tệp XML được sử dụng trong ví dụ trên có dạng như sau: “cd_catalog.xml”.

Tham khảo thêm các khóa học lập trình web từ Front-end đến Back-end do trực tiếp giảng viên quốc tế trường FPT Arena giảng dạy giúp bạn thành thạo kỹ năng lập trình web từ CƠ BẢN – NÂNG CAO với giá chỉ từ 290,000đ:
  • Học lập trình front-end cơ bản với bootstrap 4/html5/css3
  • Học lập trình front-end nâng cao qua Project thực tế
  • Học thiết kế web với Photoshop, CSS theo kiểu SASS
  • Học cách sử dụng Git_hub cho lập trình viên
  • Học lập trình Back-end PHP theo mô hình MVC cơ bản
  • Học lập trình Back-end PHP theo mô hình MVC nâng cao
  • Học lập trình Cơ sở dữ liệu với AngularJS
  • Học lập trình theme wordpress. Làm ra mọi website hoàn chỉnh với wordpress
  • Combo lập trình front-end từ cơ bản – nâng cao
  • Combo lập trình back-end từ cơ bản đến nâng cao
  • Combo lập trình web với word press từ A-Z
0