Maison  >  Article  >  interface Web  >  Un exemple de discussion sur le problème de jQuery consistant à déterminer si un élément existe_jquery

Un exemple de discussion sur le problème de jQuery consistant à déterminer si un élément existe_jquery

WBOY
WBOYoriginal
2016-05-16 16:41:251243parcourir

C'est vrai, lorsque je suivais une formation jQuery récemment, j'ai rencontré un problème lorsque jQuery détermine si un élément existe.

La question est la suivante : veuillez ajouter Id=rad4 après "Select Button 3". Dans l'état sélectionné, le contrôle HTML avec le texte "Select Button 4" ne peut être ajouté qu'une seule fois (vous pouvez choisir d'utiliser js natif). ou JQuery pour l'implémenter)

function addradio() 
{ 
if (!document.getElementById("rad4")) 
{ 
var main = document.getElementById("radioContainer"); 

var input = document.createElement("input"); 
input.setAttribute("type", "radio"); 
input.setAttribute("id", "rad4"); 
var span = document.createElement("span"); 
var txt = document.createTextNode("选择按钮4"); 
span.appendChild(txt); 
main.appendChild(input); 
main.appendChild(span); 
} 
}

Il suffit de déterminer si l'objet existe. if (!document.getElementById("rad4")) mais dans jQuery if (!$("#rad4")) est toujours faux je pensais que c'était la même chose que javascript mais ce n'est pas le cas

.

Dans jQuery. Une fois enveloppé par le wrapper $(""), c'est un objet, non nul ou indéfini, donc !$("#rad4")

Toujours faux. La bonne approche est la suivante

S'il n'y a aucun objet dans le wrapper, la longueur sera 0 c'est tout ce dont vous avez besoin

$(function () 
{ 

$(".domtree div:eq(6) input:eq(1)").click(function () 
{ 
if ($("#rad4").length < 1) 
{ 
$("<input type='radio' id='rad4'> <span>选择按钮4</span>").appendTo($("#radioContainer")); 
} 
} 
) 

} 
)
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn