2011-09-11 14 views
8

Trước hết; ví dụ về mã HTML:Chọn div (hoặc phần tử khác) mà lớp đó chứa "grap" (o từ được chỉ định khác) ví dụ

<div class"grap1"> some conetent</div> 
<div class"grap2"> some conetent</div> 
<div class"grap3"> some conetent</div> 
<div class"blabla">some content></div> 

Và bây giờ tôi muốn chọn các div chứa từ "grap" ở đâu đó là tên lớp (vì vậy trong trường hợp này là ba div đầu tiên). Làm thế nào tôi có thể đạt được điều đó?

Đây không phải đang làm việc: http://api.jquery.com/attribute-contains-word-selector/

+1

Các "thuộc tính chứa từ" selector không hoạt động vì "chữ" của bạn không giới hạn bởi khoảng trắng. – FtDRbwLXw6

+0

câu hỏi này được hỏi trước, xem http://stackoverflow.com/questions/4106958/jquery-select-only-a-class-containing-a-string –

Trả lời

2

Sử dụng các "thuộc tính chứa" selector: http://api.jquery.com/attribute-contains-selector/
Các "thuộc tính chứa từ" selector sẽ không làm việc bởi vì, theo các tài liệu, nó tìm thấy yếu tố mà các thuộc tính quy định chứa từ đã cho được phân cách bằng dấu cách.

4

Tùy thuộc vào trường hợp sử dụng cụ thể của bạn, bạn có thể thử chọn tiền tố thuộc tính:

var $grapDivs = $('div[class|="grap"]'); 

Có vẻ như từ dữ liệu mẫu của bạn rằng "Grap" luôn được đặt trước từ lớp, vì vậy nếu đó là trường hợp này có thể là những gì bạn muốn. Nếu "grap" có thể ở bất kỳ đâu trong lớp thay vì ngay từ đầu, hãy sử dụng * = thay thế.

+0

Bạn đã quên ']' trong bộ chọn của mình ... – Abraham

+0

Cảm ơn bạn, tôi đã cập nhật nó. – FtDRbwLXw6

Các vấn đề liên quan