2010-04-15 41 views
67

Nói rằng tôi làmthử nghiệm cho trống jQuery lựa chọn kết quả

var s = $('#something'); 

và tiếp theo tôi muốn kiểm tra nếu phát hiện jQuery #something, ví dụ: Tôi muốn thử nghiệm nếu s trống.

tôi có thể sử dụng đáng tin cậy isempty() tôi trên nó:

function isempty(o) { 
    for (var i in o) 
     return false; 
    return true; 
} 

Hoặc kể từ khi đối tượng jQuery là mảng, tôi cho rằng tôi có thể kiểm tra s.length.

Nhưng dường như không hoàn toàn trong thành ngữ của jQuery, không phải jQueryesque. Bạn có đề nghị gì?

+0

thể trùng lặp của http://stackoverflow.com/questions/299802/how-do-you-check-if- a-selector-exist-in-jquery – inkedmn

+0

inkedmn, vâng, câu hỏi tương tự nhưng tôi không thấy câu trả lời '.size()' ở đó, mà tôi thích. –

+0

có thể trùng lặp của [Có chức năng "tồn tại" cho jQuery không?] (Http://stackoverflow.com/questions/31044/is-there-an-exists-function-for-jquery) – Bergi

Trả lời

78

Sử dụng thuộc tính s.length.

if(s.length == 0) { 
    ... 
} 

[sửa] Kích thước() bị phản đối trong jquery 1,8 http://api.jquery.com/size/

+3

Tôi muốn nói '.size() 'chắc chắn là jQueryesque nhất của các tùy chọn. Mặc dù tôi dám nói '.length' sẽ nhanh hơn. Cảm ơn bạn. –

+1

+1 fsb và theo liên kết được cung cấp (Billiam), sử dụng .length() là "ưa thích". – chris

+0

@george .length không có dấu ngoặc đơn – Liam

3
if($("#something").length > 0){ 
    // Element found 
} 
else{ 
    // No element found 
} 
Các vấn đề liên quan