Heim > Artikel > Web-Frontend > Analysieren Sie den Unterschied zwischen der Verwendung der Funktionen „remove()“ und „detach()“ in jquery
jquery ist ein sehr leistungsfähiges Tool, das häufig in der Arbeit verwendet wird. Einige Methoden werden jedoch von uns immer noch ignoriert, da sie nicht häufig verwendet werden oder nicht bemerkt wurden.
Remove() und detach() können eine davon sein. Möglicherweise verwenden wir häufiger Remove(), aber detach() wird möglicherweise weniger verwendet. Vielleicht habe ich es nicht sorgfältig genug verwendet. Aber dieses Mal habe ich es aufgrund eines Problems in einem Projekt verwendet. Ich fand es sehr interessant, also habe ich es aufgezeichnet und mit allen geteilt.
remove(): Die offizielle Erklärung ist, dass
alle passenden Elemente aus dem DOM entfernt . Diese Methode entfernt die übereinstimmenden Elemente nicht aus dem jQuery-Objekt, sodass die übereinstimmenden Elemente in Zukunft wiederverwendet werden können. Neben der Beibehaltung des Elements selbst werden jedoch auch andere Elemente wie gebundene Ereignisse, zusätzliche Daten usw. entfernt.
Nach meinem Verständnis wurde das Element entfernt. Aber wie finde ich es wieder? Ehrlich gesagt habe ich noch nie einen Freund gefunden, der es benutzt hat. Können Sie es mir sagen, vielen Dank, Verwendung: Alle Absätze aus dem DOM löschen HTML-Code:e388a4556c0f65e1904146cc1a846beeHello94b3e26ee717c64999d7867364b1b4a3 how are e388a4556c0f65e1904146cc1a846beeyou?94b3e26ee717c64999d7867364b1b4a3jQuery-Code:
$("p").remove();Ergebnis:
how areZu dieser Methode gibt es nicht viel zu sagen. Reden wir hauptsächlich über die detach()-Methode, Offizielle Beschreibung:
Entfernen Sie alle passenden Elemente aus dem DOM. Diese Methode entfernt die übereinstimmenden Elemente nicht aus dem jQuery-Objekt, sodass die übereinstimmenden Elemente in Zukunft wiederverwendet werden können. Im Gegensatz zu „remove()“ bleiben alle gebundenen Ereignisse, angehängten Daten usw. erhalten. Beschreibung: Alle Absätze aus dem DOM entfernen HTML-Code:
e388a4556c0f65e1904146cc1a846beeHello94b3e26ee717c64999d7867364b1b4a3 how are e388a4556c0f65e1904146cc1a846beeyou?94b3e26ee717c64999d7867364b1b4a3jQuery-Code:
$("p").detach();Ergebnis:
how areBeschreibung: Löschen Sie den Absatz mit der Hallo-Klasse aus dem DOM HTML-Code:
889c467f53be0c0d4e7d0d985361b565Hello94b3e26ee717c64999d7867364b1b4a3 how are e388a4556c0f65e1904146cc1a846beeyou?94b3e26ee717c64999d7867364b1b4a3jQuery-Code:
$("p").detach(".hello");Ergebnis:
how are e388a4556c0f65e1904146cc1a846beeyou?94b3e26ee717c64999d7867364b1b4a3Wenn wir es so betrachten, scheint es keinen Unterschied zu geben. Diese beiden Funktionen, haha. . . . Lassen Sie mich Ihnen jetzt erzählen, was mit mir passiert ist. Dann wird jeder verstehen, wie man es löst. Ich habe hier ein Formular, eines davon ist der Registrierungscode, das heißt, jede Information hat einen unabhängigen Registrierungscode. Ohne den Registrierungscode kann die Registrierung nicht erfolgreich sein. Ich verwende das
KontrollFormularValidator von jquery zur Überprüfung. Es startet die Überprüfung, wenn die Seite geladen wird, und für CSS die Anzeige ()-Methode in jquery werden ignoriert. Ursprünglich. Dies ist kein Problem, aber der Benutzer hat eine neue Forderung gestellt, die darin besteht, eine Option hinzuzufügen, um zu bestimmen, ob der Registrierungscode angezeigt wird. Wenn er nicht angezeigt wird, überprüfen Sie das Textfeld für den Registrierungscode nicht Nachfrage.
Nachdem ich CSS Display und JQuery Hide() ausprobiert hatte, habe ich mich für Remove() entschieden. Die Überprüfung wurde gestoppt, aber als ich mich für die Überprüfung entschied, konnte der entfernte Inhalt nicht wieder hinzugefügt werden, also suchte ich nach etwas, das wieder hinzugefügt werden konnte. Zu diesem Zeitpunkt entdeckte ichdetach()。它的有什么好处呢。我下面放一代码出来
var p; function selectChange() { if (document.getElementById("ddl_schoolarea").value != "请选择") { p = $("#trlession").detach(); } else { //table1为一个table名字 $("#table1").append(p); } }
Nachdem ich diesen Code gesehen habe, glaube ich nicht, dass ich zu viel erklären muss. Jeder wird es verstehen, es ist eine sehr interessante Methode.
Das obige ist der detaillierte Inhalt vonAnalysieren Sie den Unterschied zwischen der Verwendung der Funktionen „remove()“ und „detach()“ in jquery. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!