2011-07-13 24 views
5

Để đưa ra một cấp cao ngắn gọn, tôi có một trang kết quả tìm kiếm với các hộp tiện lợi tùy chỉnh cho mỗi kết quả. Tôi lấy một cloneNode (true) của các kết quả tìm kiếm và lưu trữ nó trong một đối tượng jQuery. Sau đó tôi muốn ảnh hưởng đến nội dung của trẻ em bằng cách nhắm mục tiêu theo ID.Cách lấy con của một đối tượng jQuery được lưu trữ trong một biến

Giả sử tôi có một cấu trúc HTML như thế này:

<div id="parent"> 
    <div id="child-1"> 
    </div> 
    <div id="child-2"> 
    </div> 
</div> 

Và tôi giữ lấy một bản sao của cha mẹ như vậy:

var templatePage = $('div#parent')[0].cloneNode(true); 

Bây giờ tôi muốn làm ảnh hưởng đến CSS của #child-2 với một cái gì đó tương tự để:

templatePage.jQueryGetElementById('child-2').css("display", "none"); 

tôi không thể sử dụng $('#child-2').css("display", "none"); bởi vì tôi cần div đó là trong biến, không phải trang.

Chắc chắn chỉ có một số điều nhỏ tôi đang bỏ lỡ nhưng than ôi, Google không tốt với tôi về điều này.

Trả lời

8
$("#child-1", templatePage).css("display", "none"); 

Bạn có thể xem ví dụ về số here này. Điều này hoạt động bằng cách chuyển một ngữ cảnh (templatePage) đến jQuery và như templatePage chứa phần tử DOM, #child-1 được tìm trong phần tử DOM đó, chứ không phải là tài liệu.

+1

Cảm ơn! Làm việc như người ở. – Inversus

+0

Cảm ơn. nó cũng làm việc cho bất kỳ chức năng nào của jQuery cũng như css –

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