Câu trả lời:
//node[not(@*)]
Đó là XPath để chọn tất cả các nút có tên là "nút" trong tài liệu mà không có bất kỳ thuộc tính nào.
Để giải quyết bình luận của Marek Czaplicki và mở rộng câu trả lời
//node[not(@*) or not(string-length(@*))]
.... sẽ chọn tất cả các phần tử nút không có thuộc tính HOẶC có các thuộc tính đều trống. Nếu đó chỉ là một thuộc tính cụ thể mà bạn quan tâm, thay vì tất cả chúng, thì bạn có thể sử dụng
//node[not(@attribute1) or not(string-length(@attribute1))]
... và điều này sẽ chọn tất cả các phần tử nút không có thuộc tính gọi là attribute1
OR có thuộc tínhattribute1
thuộc tính trống.
Nghĩa là, các phần tử sau sẽ được chọn bởi một trong các biểu thức xpath này
<nodes>
<node attribute1="aaaa"></node>
<node attribute1=""></node> <!--This one -->
<node attribute1="bbbb"></node>
<node></node> <!--...and this one -->
</nodes>
Xem ví dụ jsfiddle tại đây
<node class=""></node>
bất cứ điều gì chúng ta có thể làm với nó?