2011-02-04 32 views
31

Làm cách nào để kết hợp biến với bộ chọn?Bộ chọn jQuery có biến số

Tôi có biến ID.

Tôi muốn chọn hình ảnh có id này từ div #one.

jQuery('#one img .id') là bộ chọn. Tôi đã thử $('#one img .'+id) nhưng không hoạt động.

+2

Bạn có thể cung cấp thêm một chút mã và giải thích chính xác những gì không hoạt động không? –

Trả lời

43

Edit: Dựa trên nhận xét của bạn dưới đây, bạn sẽ sử dụng này:

$('#one img.'+id) 

Trong câu hỏi của bạn, bạn có một không gian giữa img.class, tôi đã chỉ cần xóa để bạn có được img.className hoặc img.'+className

+0

Xin lỗi vì nhầm lẫn ID của bạn là biến jQuery chứa DOM CLASS. – anonymous

+1

@anon đã cập nhật câu trả lời của tôi –

+0

Điều quan trọng cần lưu ý là id phải không phải là số, do đó, hãy làm toString() nếu id là một số. – isync

1

này chỉ có thể là một lỗi đánh máy hoặc bạn thực sự sử dụng biến id trong một lớp học, nhưng có lẽ nó nên là:

jQuery('#one img #'+id) 
1

. là một chọn lớp. Hãy thử thay đổi đó để một #:

$('#one img #'+id) 
+0

Nhưng tôi muốn chọn một CLASS. Tôi đang cố gắng theo cách của bạn nhưng với. thay vì #. Không hoạt động. – anonymous

0

Có thể bạn muốn chọn img được đặt với lớp cụ thể và lưu lớp này vào biến id trong phần tử div có id = 'one'.

DEMO

Trong bản demo tôi chọn yếu tố img, sao chép nó, và gắn liền với các div id = một.

1

ID phải là duy nhất trong HTML của bạn. Vì vậy, bạn sẽ có thể chọn ID trực tiếp mà không cần lo lắng về DIV nào. Vì bạn đề cập đến ID được gắn vào thẻ img, thì điều này là đủ.

$('#' + id);