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")); } } ) } )