2010-03-09 32 views
16

Tôi có HTML sauJQuery Tìm #ID, removeClass và addClass

<div id="testID" class="test1"> 
     <img id="testID2" class="test2" alt="" src="some-image.gif" /> 
    </div> 

tôi về cơ bản muốn để có đượC# testID2 và thay thế .test2 lớp với .test3 lớp học?

tôi đã cố gắng

jQuery('#testID2').find('.test2').replaceWith('.test3'); 

Nhưng điều này không xuất hiện để làm việc?

Bất kỳ ý tưởng nào?

Trả lời

34
jQuery('#testID2').find('.test2').replaceWith('.test3'); 

Ngữ nghĩa, bạn chọn phần tử với ID testID2, sau đó bạn đang tìm kiếm bất kỳ phần tử con nào với lớp test2 (không tồn tại) và sau đó bạn đang thay thế phần tử đó bằng phần tử khác (các phần tử ở bất kỳ đâu trong trang có lớp test3) cũng không tồn tại.

Bạn cần phải làm điều này:

jQuery('#testID2').addClass('test3').removeClass('test2'); 

này sẽ chọn các phần tử với ID testID2, sau đó thêm lớp test3 với nó. Cuối cùng, nó loại bỏ lớp test2 khỏi phần tử đó.

+0

+ di chuyển trên 1000. Giải thích tốt. –

+0

cảm ơn tuyệt vời :) – Tom

0

Hãy thử

$('#testID').addClass('nameOfClass'); 

hoặc

$('#testID').removeClass('nameOfClass'); 
0

.....

$("#testID #testID2").removeClass("test2").addClass("test3"); 

Bởi vì bạn đã gán một id để img quá, bạn chỉ có thể làm điều này quá:

$("#testID2").removeClass("test2").addClass("test3"); 

Và cuối cùng, bạn có thể làm điều này quá:

$("#testID img").removeClass("test2").addClass("test3"); 
0

sửa Code:

jQuery('#testID2').addClass('test3').removeClass('test2'); 
Các vấn đề liên quan