$('.test').css('background','red');
<div id="example">Some text</div>
Làm thế nào tôi có thể .addClass('test')
nếu #example
chứa từ "văn bản"?Nếu phần tử chứa văn bản nhất định
$('.test').css('background','red');
<div id="example">Some text</div>
Làm thế nào tôi có thể .addClass('test')
nếu #example
chứa từ "văn bản"?Nếu phần tử chứa văn bản nhất định
chỉ cần sử dụng :contains
pseudoclass
$('#example:contains("text")').addClass('test');
này sẽ bổ sung thêm các lớp học để #example
nếu nó có chứa 'text'
Hoàn hảo, cảm ơn! – UserIsCorrupt
Bạn có thể sử dụng $("#example")
để có được một wrapper jQuery cho nguyên tố này, sau đó sử dụng text()
để có được văn bản của nó và sử dụng String#indexOf
, ví dụ:
var ex = $("#example");
if (ex.text().indexOf("text") !== -1) {
ex.addClass("test");
}
Bạn cũng có thể sử dụng :contains("text")
trong bộ chọn là F. Calderan shows, mặc dù lưu ý rằng khi bạn sử dụng bộ chọn giả không chuẩn như vậy, jQuery không thể sử dụng công cụ được tích hợp sẵn của trình duyệt để tìm các phần tử, vì vậy nó có thể chậm hơn. Ở trên sẽ cho phép jQuery sử dụng document.getElementById
. Tuy nhiên, chỉ có một vài tình huống mà tốc độ thực sự quan trọng.
Bạn đã làm gì cố gắng? Thành thật mà nói, điều này có vẻ giống như việc sử dụng API jQuery thực sự, thực sự đơn giản. –
** 1. ** Đặt câu hỏi gọn gàng, thêm "jquery" trước nó. "jquery nếu phần tử chứa văn bản nhất định" ** 2. ** Truy cập google và chạy tìm kiếm. – Joonas