2010-07-22 29 views
5

Tôi đang gặp sự cố khi cố gắng phát hiện xem bảng có tồn tại bằng jQuery hay không. Bảng không có lớp hoặc ID.Làm cách nào để phát hiện xem bảng có tồn tại (không có lớp hoặc ID)

Những gì tôi đang cố gắng để đạt được là không có ngọn lửa mã sau trừ một bảng tồn tại:

function tableAltRows() 
    { 
     $("#content table tr:even").each(function(){ 
      $(this).addClass("alt"); 
     }); 
    } 
$(tableAltRows); 

Vì vậy, tôi đã thay đổi dòng cuối cùng để:

if ($('table').length > 0) { 
    $(tableAltRows); 
} 

Nhưng kiểm tra dòng chiều dài bảng không bao giờ trả về bất cứ điều gì khác hơn 0. Là một thử nghiệm, nếu tôi thay đổi nó thành == 0 nó gọi hàm tableAltRows. Tôi không quen thuộc với jQuery, vì vậy tôi cho rằng tôi đang thiếu điều gì đó hiển nhiên?

+1

như thế nào bảng này được tạo ra? Bạn có một trang ví dụ? – BrunoLM

+1

Bạn// làm cách nào để gọi mã này? –

Trả lời

8

Tôi nghi ngờ rằng bạn không gọi chức năng của mình khi DOM đã sẵn sàng. Hãy thử:

$(document).ready(function() { 
    if($('table').length) { 
     alert('hello'); 
    } 
}); 
0

Nếu bạn gọi phần tử trước khi nó tồn tại, nó sẽ không hoạt động.

Bạn có thể:

  1. Chèn đoạn mã sau các yếu tố
  2. Hãy kịch bản thực thi khi trang đã sẵn sàng

Xem this example

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