Thuộc tính firstChild của XML DOM

Định nghĩa và cách sử dụng

Thuộc tính firstChild trả về nút con đầu tiên của nút được chọn.

Nếu nút được chọn không có nút con, thuộc tính này sẽ trả về NULL.

Cú pháp:

elementNode.firstChild

Hướng dẫn và ghi chú

Ghi chú:Internet Explorer sẽ bỏ qua các nút văn bản trống giữa các nút (ví dụ: ký tự xuống dòng), trong khi Mozilla không làm điều đó. Do đó, trong ví dụ sau, chúng ta sẽ sử dụng một hàm để kiểm tra loại nút của nút con đầu tiên.

thuộc tính nodeType của phần tử là 1, vì vậy nếu nút con đầu tiên không phải là phần tử, hãy di chuyển đến nút tiếp theo và kiểm tra xem nó có phải là phần tử hay không. Quá trình này sẽ tiếp tục cho đến khi tìm thấy nút con đầu tiên. Phương pháp này đảm bảo rằng bạn sẽ nhận được kết quả chính xác trên cả Internet Explorer và Mozilla.

Nếu bạn muốn biết thêm về sự khác biệt giữa IE và trình duyệt Mozilla, hãy truy cập vào phần hướng dẫn XML DOM trên CodeW3C.com Trình duyệt DOM bài này.

ví dụ

Trong tất cả các ví dụ, chúng ta sẽ sử dụng tệp XML books.xmlvà hàm JavaScript loadXMLDoc()

mã nguồn sau đây lấy nút con đầu tiên từ "books.xml":

//kiểm tra xem nút đầu tiên là nút phần tử hay không
function get_firstchild(n)
{
var x=n.firstChild;
while (x.nodeType!=1)
  {
  x=x.nextSibling;
  }
return x;
}
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.documentElement;
var firstNode=get_firstchild(x);
for (var i=0;i<firstNode.childNodes.length;i++)
{ 
  if (firstNode.childNodes[i].nodeType==1)
  { 
  //Chỉ xử lý các nút element
  document.write(firstNode.childNodes[i].nodeName);
  document.write(" = ");
  document.write(firstNode.childNodes[i].childNodes[0].nodeValue);
  document.write("<br />");
  } 
}

Kết quả đầu ra của đoạn mã trên:

title = Everyday Italian
author = Giada De Laurentiis
year = 2005
price = 30.00