Controleer of element in jQuery [DUPLICE]

Hoe controleer ik of er een element bestaat als het element is gemaakt met .append()-methode?
$('elemId').lengthwerkt niet voor mij.


Antwoord 1, Autoriteit 100%

$('elemId').lengthwerkt niet voor
mij.

U moet #vóór het element-ID plaatsen:

$('#elemId').length
---^

Met Vanilla JavaScript hebt u de hash (#) niet nodig, b.v. document.getElementById('id_here'), maar bij gebruik van jQuery moet u Hash to-target-elementen opstellen op basis van idnet als CSS.


Antwoord 2, Autoriteit 23%

Probeer de lengte van de selector te controleren, als het u iets retourneert, dan moet het element anders niet bestaan.

if( $('#selector').length )         // use this if you are using id to check
{
     // it exists
}
 if( $('.selector').length )         // use this if you are using class to check
{
     // it exists
}

Antwoord 3, Autoriteit 9%

Probeer dit:

if ($("#mydiv").length > 0){
  // do something here
}

De eigenschappen van de lengte retourneert nul als er geen element bestaat.


Antwoord 4, Autoriteit 4%

Hoe controleer ik of een element

bestaat

if ($("#mydiv").length){  }

Als het 0is, evalueert deze naar false, alles meer dan die true.

Er is geen behoefte aan een groter dan, minder dan vergelijking.


Antwoord 5, Autoriteit 2%

Uw elemIdZoals de naam suggereert, is een idkenmerk, dit zijn alles wat u kunt doen om te controleren of het bestaat:

vanille javascript: Als u meer geavanceerde selectors hebt:

//you can use it for more advanced selectors
if(document.querySelectorAll("#elemId").length){}
if(document.querySelector("#elemId")){}
//you can use it if your selector has only an Id attribute
if(document.getElementById("elemId")){}

jQuery:

if(jQuery("#elemId").length){}

Antwoord 6

U kunt ook array-achtige notatie gebruiken en controleren op het eerste element.
Het eerste element van een lege array of verzameling is eenvoudigweg undefined, dus u krijgt het “normale” JavaScript NEWYY / FALSY-gedrag:

var el = $('body')[0];
if (el) {
    console.log('element found', el);
}
if (!el) {
    console.log('no element found');
}

Antwoord 7

U kunt native JS gebruiken om te testen op het bestaan ​​van een object:

if (document.getElementById('elemId') instanceof Object){
    // do something here
}

Vergeet niet, JQuery is niets meer dan een geavanceerde (en zeer nuttige) wrapper rondom Native JavaScript-opdrachten en eigenschappen


Antwoord 8

Als u een klasse op uw element hebt, kunt u het volgende proberen:

if( $('.exists_content').hasClass('exists_content') ){
 //element available
}

Other episodes