Bài viết phổ biến của tác giả
- Phân tích cú pháp XML AJAX/jQuery
- Sơ đồ XML với Đa kế thừa
- Tuần tự hóa Enum Json so với XML
- XML loại đơn giản, nội dung đơn giản, loại phức tạp, nội dung phức tạp
Tôi đang cố gắng để có được một nút cụ thể trong xml của tôi (
) trước nút chú thích. Sau đây là phương pháp của nó:
chức năng kiểm tra(xmlResponse)
{
var parser = new DOMParser(), xmlDoc = parser.parseFromString(xmlResponse,"text/xml");
var comentDocument = document.createComment("Bình luận cá nhân của tôi");
console.log(xmlDoc.querySelectorAll("tên đường")[0])
xmlDoc.insertBefore(commentDocument, xmlDoc.querySelectorAll("tên đường")[0]);
trả về xmlDoc
}
Khi tôi gọi:
test("<địa chỉ="">Tên phố địa chỉ="">")
Tôi hiểu:
Tên đường
DOMException chưa được phát hiện: Không thực thi được 'insertBefore' trên 'Node': Nút mà nút mới sẽ được chèn vào không phải là nút con của nút này.
tại Lỗi (bản địa)
tại generateTheComment (<ẩn danh="">:12:9)
tại <ẩn danh="">:2:1
tại Object.InjectedScript._evaluateOn (<ẩn danh="">:895:140)
tại Object.InjectedScript._evaluateAndWrap (<ẩn danh="">:828:34)
tại Object.InjectedScript.evaluate (<ẩn danh="">:694:21)
ẩn>ẩn>ẩn>ẩn>ẩn>
Như bạn có thể thấy
in đúng; vì tôi muốn thêm comentTài liệu
cho cha mẹ của nó <đường phố="">đường>
.
Không biết tôi đã mắc lỗi ở đâu.
Tôi mong đợi mã trả về:
<địa chỉ="">
<đường phố="">
Tên đường phố
đường phố="">
địa chỉ="">
1 Câu trả lời
xmlDoc.insertBefore(commentDocument, xmlDoc.querySelectorAll("tên đường")[0]);
Thao tác này sẽ thử chèn trực tiếp từ tài liệu. Trước tiên, bạn cần phải đến phần tử mà bạn muốn chèn bình luậnCha mẹ trực tiếp:
var name = xmlDoc.querySelector("tên đường");
name.parentNode.insertBefore(commentDocument, name);
Về javascript - Không thể thực thi 'Node' trên 'insertBefore': Nút mà nút mới sẽ được chèn vào không phải là nút con của nút này, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/30913032/
Tôi là một lập trình viên xuất sắc, rất giỏi!