378 Stimmen

Wie prüfe ich mit jQuery, ob ein HTML-Element leer ist?

Ich versuche, eine Funktion nur dann aufzurufen, wenn ein HTML-Element leer ist, mit jQuery.

Etwa so:

if (isEmpty($('#element'))) {
    // do something
}

1voto

bren Punkte 4082
document.getElementById("id").innerHTML == "" || null

o

$("element").html() == "" || null

1voto

Marc Uberstein Punkte 12281

Sie können es versuchen:

if($('selector').html().toString().replace(/ /g,'') == "") {
//code here
}

*Ersetzen Sie die Leerzeichen, nur für den Fall ;)

-1voto

Zubair1 Punkte 2690

Suchen Sie nach jQuery.isEmptyObject() ?

http://api.jquery.com/jquery.isemptyobject/

-1voto

DanH Punkte 4938

Hier ist ein jQuery-Filter basierend auf https://stackoverflow.com/a/6813294/698289

$.extend($.expr[':'], {
  trimmedEmpty: function(el) {
    return !$.trim($(el).html());
  }
});

-1voto

Yash Punkte 8318

JavaScript

var el= document.querySelector('body'); 
console.log(el);
console.log('Empty : '+ isEmptyTag(el));
console.log('Having Children : '+ hasChildren(el));

function isEmptyTag(tag) { 
    return (tag.innerHTML.trim() === '') ? true : false ;
}
function hasChildren(tag) {
    //return (tag.childElementCount !== 0) ? true : false ; // Not For IE
    //return (tag.childNodes.length !== 0) ? true : false ; // Including Comments
    return (tag.children.length !== 0) ? true : false ; // Only Elements
}

Versuchen Sie, etwas davon zu benutzen!

document.getElementsByTagName('div')[0];
document.getElementsByClassName('topbar')[0];

document.querySelectorAll('div')[0];
document.querySelector('div'); // gets the first element.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X