Và nếu có, bạn chọn jQuery bằng cách nào? Tức là, $("#a b")
sẽ tìm tất cả các nút <b>
trong nút với id=a
.Phần tử DOM có thể có ID chứa không gian không?
Trả lời
Theo HTML 4.0 specification for basic types:
ID và TÊN thẻ phải bắt đầu bằng một lá thư ([A-Za-z]) và có thể được theo sau bởi bất kỳ số lượng chữ cái, chữ số ([0 -9]), dấu gạch nối ("-"), gạch dưới ("_"), dấu hai chấm (":") và dấu chấm (".").
Và ngay cả khi không gian hợp lệ, thuộc tính id có dấu cách sẽ được jQuery hiểu là ancestor descendant selector với cú pháp chọn hiện tại.
Câu trả lời ngắn gọn là không. Chữ cái, số, dấu gạch dưới, dấu gạch nối, dấu chấm và dấu hai chấm.
(darn, karim đánh tôi với nó.)
Đây là một cuộc tranh cãi bằng cách tương tự.
Xem xét công cụ chọn Nhóm. Không giống như ID, nhưng có những simlarities.
Bạn rõ ràng là không thể có một lớp tên với một không gian nhúng vì một danh sách các lớp
<p class='a b c'>some text</p>
không thể được phân biệt với một tên duy nhất với không gian.
Ok, bạn không thể có danh sách tên id, dù sao đi nữa, vì vậy sự tương tự bị tách rời, nhưng tôi nghĩ chúng tôi đã quá nhanh để cố gắng chèn khoảng trắng nơi chúng không thuộc về.
Mặc dù đây là câu hỏi cũ nhưng tôi nghĩ rằng tôi sẽ chia sẻ thông tin về HTML 5 Spec cho những người gặp phải câu hỏi này như tôi đã làm một vài năm sau khi được hỏi.
Theo HTML 5 Spec:
Giá trị phải là duy nhất trong số tất cả các ID trong cây con chủ của phần tử và phải chứa ít nhất một ký tự. Giá trị không được chứa bất kỳ ký tự khoảng trắng nào.
Nó cũng nói:
Không có hạn chế khác về những gì tạo thành một ID có thể thực hiện; cụ thể, ID có thể chỉ gồm chữ số, bắt đầu bằng chữ số, bắt đầu bằng dấu gạch dưới, chỉ bao gồm dấu chấm câu, v.v.
- 1. Có thể sử dụng ActionLink có chứa phần tử không?
- 2. Tìm phần tử DOM theo ID khi ID chứa dấu ngoặc vuông?
- 3. Nhận giá trị css không có phần tử DOM
- 4. Có bình thường khi có hai phần tử có cùng id trong hai phần tử div với id khác không?
- 5. Tôi có thể applyBindings cho nhiều hơn một phần tử DOM bằng Knockout không?
- 6. Làm cách nào để có được phần tử DOM có chứa lựa chọn hiện tại?
- 7. Phần tử HTML có thể có nhiều thuộc tính ID duy nhất không?
- 8. Phần tử XML có thể chứa các phần tử văn bản và phần tử con cùng một lúc không?
- 9. Phần tử có thể kéo ẩn bên ngoài vùng chứa
- 10. Có cách nào để kiểm tra xem hai phần tử DOM có bằng nhau hay không?
- 11. Phần tử có thể có cả id và một lớp không?
- 12. Jquery tìm xem trang có chứa id cụ thể không?
- 13. Di chuyển phần tử DOM có nối thêm()?
- 14. Chọn các phần tử có id lạ
- 15. Các phần tử có thể chứa các khối trong bem
- 16. GroupBox trong WPF chỉ có thể chứa một phần tử?
- 17. Yếu tố DOM nào không thể chấp nhận id?
- 18. Tạo vùng chứa các phần tử có lề giữa các phần tử chứ không phải vùng chứa?
- 19. Tìm các phần tử có Id động
- 20. Người trợ giúp ASP.NET MVC html có thể hiển thị phần tử không có thuộc tính ID không?
- 21. Prototype có thể mở rộng các phần tử SVG không?
- 22. Kiểm tra xem đối tượng có phải là phần tử DOM hay không
- 23. Lược đồ XML: Phần tử có thể chứa các phần tử hoặc văn bản?
- 24. Có thể sao chép các phần tử HTML trong jQuery bằng ID và tên mới không?
- 25. Tôi có thể có nhiều: trước phần tử giả cho cùng một phần tử không?
- 26. jQuery - làm cách nào tôi có thể tìm thấy phần tử có id nhất định?
- 27. '__flash__removeCallback' không được xác định khi xóa phần tử DOM có khung nội tuyến Youtube
- 28. PHP DOM thay thế phần tử bằng phần tử mới
- 29. Kiểm tra xem phần tử DOM có tập trung
- 30. Trong Javascript, bạn có thể mở rộng DOM không?
Ahh, hai phút trễ :) Hãy bình chọn của tôi! – Dima