2010-03-02 53 views

Trả lời

14

Bạn có thể làm điều này:

var ids = new Array(); 
$('[id]').each(function() { //Get elements that have an id= 
    ids.push($(this).attr("id")); //add id to array 
}); 
//do something with ids array 

Một lưu ý tôi thấy thử nghiệm này, Firebug console tính là một, nếu điều đó đã được kích hoạt chỉ cần lưu ý.

+4

Re: Firebug - '$ ('cơ thể [id]')' có thể là một lựa chọn tốt hơn, sau đó, nếu ai có thể chắc chắn rằng chúng tôi không muốn 'yếu tố head' hoặc như. – Matchu

6

Tôi nghĩ rằng điều này sẽ làm việc

var array = []; 
$("*").each(function(){ 
    if(this.id) array.push(this.id); 
}); 
9
var ids = $('*[id]').map(function() { 
    return this.id; 
}).get(); 

Phương pháp .map() là đặc biệt hữu ích cho nhận hoặc thiết lập các giá trị của một tập hợp các yếu tố này.

http://api.jquery.com/map/

+4

Đây là loại điều mà ở đó một số nó sạch hơn nhiều, và với những người không thể quấn đầu xung quanh nó xấu hơn nhiều. – Matchu

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