


jQuery verwendet das zTree-Plug-in, um die gemeinsame Nutzung von Baumcode per Drag-and-Drop zu implementieren
Unter den Baum-Plugins, die mir bisher begegnet sind, halte ich zTree für relativ einfach und leicht zu bedienen. Eine Geschäftsanforderung bestand darin, bestimmte Objekte im Baum nach Belieben zu gruppieren, was einer Änderung der Gruppierung von Objekten gleichkam. Deshalb habe ich zTree verwendet und einige Studien dazu durchgeführt.
In diesem Artikel wird hauptsächlich das Beispiel von js vorgestellt, das das zTree-Plug-in zum Implementieren eines ziehbaren Baums verwendet. Der Herausgeber findet es ziemlich gut, daher werde ich es jetzt mit Ihnen teilen und als Referenz geben. Folgen wir dem Herausgeber und schauen wir uns das an. Ich hoffe, es kann allen helfen.
Laden Sie zunächst die für zTree erforderlichen relevanten Pakete herunter und hängen Sie den offiziellen Download-Link an: zTree-Download. Nachdem Sie die relevanten Dateien eingegeben haben, können Sie zTree erstellen. Fügen Sie zuerst das ul-Tag zur Seite hinzu, dann fügen Sie die ID zum Baum hinzu, der Calss ist ztree und die Front-End-Seite ist fertig.
Hinweis: Alle folgenden Codes wurden nach meinen eigenen Bedürfnissen geschrieben und sind unvollständig. Beziehen Sie sich lediglich auf den Konfigurationsprozess und die Verwendung von Rückruffunktionen.
Frontend-Seite:
<ul id="modelTree" class="ztree"></ul>
Dann müssen Sie vor dem Schreiben die offizielle API von zTree lesen Es wurde oben ausführlich erklärt. Befolgen Sie es einfach Schritt für Schritt. Die erste besteht darin, die Einstellung zu konfigurieren. Da ich zusätzlich zur Grundkonfiguration die Drag-and-Drop-Funktion benötige, muss die Einstellung auf „true“ gesetzt werden auf die erforderliche Konfiguration. Verwandte Rückruffunktionen werden auch im Rückruf konfiguriert.
Einstellungskonfiguration:
var setting = { data: { key:{ name:'nodeName' }, simpleData: { enable: true, idKey: 'nodeId', pIdKey: 'parentNodeId' }, keep:{ leaf:true, parent:true, } }, edit:{ drag:{ isCopy: false, isMove: true, prev: true, next: true, inner: true, autoOpenTime: 0, minMoveSize: 10 }, enable:true, editNameSelectAll: true, removeTitle: "删除节点", renameTitle: "编辑节点名称", showRemoveBtn: false, showRenameBtn: false, }, callback: { beforeClick: beforeClick, beforeDrag:beforeDrag, beforeDragOpen:beforeDragOpen, beforeDrop:beforeDrop, onDrag:onDr}, };
Nachdem Sie die Einstellung konfiguriert haben, schließen Sie jede Rückruffunktion ab und bestimmen Sie den Inhalt entsprechend Ihren Anforderungen. Es gibt entsprechende Einschränkungen, ob das Ziehen durchgeführt werden kann und ob das Ziehen erfolgreich sein kann, basierend auf dem Typ des übergeordneten Knotens und einigen anderen Regeln.
Rückruffunktion:
//拖拽之前调用的函数 function beforeDrag(treeId,treeNode){ if(treeNode[0].nodeType == 'GROUP'){ return false; } if(treeNode.parentId == null && treeNode.modelType !=null){ return true; } var node = treeNode[0].getParentNode(); var modelType = treeNode[0].getParentNode().modelType; if(modelType == 'INTERFACE'){ return false; }else { return true; } } //预留被拖拽的回调函数 function onDrag(event, treeId, treeNode){ //暂时没用到 } //拖拽移动到展开父节点之前调用的函数 function beforeDragOpen(){ return true; } //拖拽操作结束之前调用的函数 function beforeDrop(treeId, treeNode, targetNode, moveType){ BRS.fileLoading('show'); var result = false; if(targetNode == null || (moveType != "inner" && !targetNode.parentTId)){ BRS.fileLoading('hide'); return false; } if(targetNode.modelType != null){ if((targetNode.modelType == 'INTERFACE' && moveType == 'inner') || targetNode.getParentNode().modelType == 'INTERFACE'){ BRS.fileLoading('hide'); return false; } } var objDetail = { url: '/api/model/' + treeNode[0].id, async:false, } jsonAjax(objDetail,function (detailData) { var data = { nodeType : detailData.nodeType, code : detailData.code, name : detailData.name, builtIn : detailData.builtIn, iconUrl : detailData.iconUrl, modelType : detailData.modelType.code, interfaceModelId : detailData.interfaceModelId, }; data.id = treeNode[0].id; if(moveType != 'inner'){ data.groupId = targetNode.parentId; }else{ data.groupId = targetNode.id; } var obj = { type:"put", showSuccessMsg: false, param: { params:JSON.stringify(data) }, async:false, url: '/api/model', } jsonAjax(obj,function(updateData){ if(updateData != null){ result = true; ing('hide'); return result; } //预留拖拽结束的回调函数 function onDrop(event, treeId, treeNode, targetNode, moveType){ befod('hide'); return result; } //预留拖拽结束的回调函数 function onDrop(event, treeId, treeNode, targetNode, moveType){ beforeClick(treeId, treeNode[0]); }
Nachdem die oben genannten Einstellungen und zugehörigen Funktionen abgeschlossen sind, können Sie die Initialisierungsmethode von zTree aufrufen und anfordern durch Ajax Die zurückgegebenen Parameter werden verwendet, um den von uns benötigten Baum auszufüllen.
// 初始化对象分组树 var treeObj = $("#modelTree"); $.fn.zTree.init(treeObj, setting, data); zTree_Menu = $.fn.zTree.getZTreeObj("modelTree");
Der endgültige Baum wurde gebildet (kann gezogen werden):
Verwandte Empfehlungen:
zTree-Plug-in-Mehrfachauswahl-Dropdown-Menü-Beispielcode_Javascript-Kenntnisse
So verwenden Sie das zTree-Plug-in von jQuery in AngularJS_AngularJS
Das obige ist der detaillierte Inhalt vonjQuery verwendet das zTree-Plug-in, um die gemeinsame Nutzung von Baumcode per Drag-and-Drop zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Wie implementiert man die doppelte WeChat-Anmeldung auf Huawei-Mobiltelefonen? Mit dem Aufkommen der sozialen Medien ist WeChat zu einem unverzichtbaren Kommunikationsmittel im täglichen Leben der Menschen geworden. Viele Menschen können jedoch auf ein Problem stoßen: Sie können sich gleichzeitig auf demselben Mobiltelefon bei mehreren WeChat-Konten anmelden. Für Huawei-Mobiltelefonbenutzer ist es nicht schwierig, eine doppelte WeChat-Anmeldung zu erreichen. In diesem Artikel wird erläutert, wie eine doppelte WeChat-Anmeldung auf Huawei-Mobiltelefonen erreicht wird. Erstens bietet das EMUI-System, das mit Huawei-Mobiltelefonen geliefert wird, eine sehr praktische Funktion – das doppelte Öffnen von Anwendungen. Durch die doppelte Öffnungsfunktion der Anwendung können Benutzer gleichzeitig

So implementieren Sie die WeChat-Klonfunktion auf Huawei-Mobiltelefonen Mit der Popularität sozialer Software und der zunehmenden Bedeutung von Datenschutz und Sicherheit rückt die WeChat-Klonfunktion allmählich in den Mittelpunkt der Aufmerksamkeit der Menschen. Die WeChat-Klonfunktion kann Benutzern helfen, sich gleichzeitig bei mehreren WeChat-Konten auf demselben Mobiltelefon anzumelden, was die Verwaltung und Nutzung erleichtert. Es ist nicht schwierig, die WeChat-Klonfunktion auf Huawei-Mobiltelefonen zu implementieren. Sie müssen lediglich die folgenden Schritte ausführen. Schritt 1: Stellen Sie sicher, dass die Version Ihres Mobiltelefonsystems und die WeChat-Version den Anforderungen entsprechen. Stellen Sie zunächst sicher, dass die Version Ihres Huawei-Mobiltelefonsystems sowie die WeChat-App auf die neueste Version aktualisiert wurden.

Die Programmiersprache PHP ist ein leistungsstarkes Werkzeug für die Webentwicklung, das eine Vielzahl unterschiedlicher Programmierlogiken und Algorithmen unterstützen kann. Unter diesen ist die Implementierung der Fibonacci-Folge ein häufiges und klassisches Programmierproblem. In diesem Artikel stellen wir vor, wie Sie die Fibonacci-Folge mit der Programmiersprache PHP implementieren, und fügen spezifische Codebeispiele bei. Die Fibonacci-Folge ist eine mathematische Folge, die wie folgt definiert ist: Das erste und das zweite Element der Folge sind 1, und ab dem dritten Element ist der Wert jedes Elements gleich der Summe der beiden vorherigen Elemente. Die ersten paar Elemente der Sequenz

Im heutigen Bereich der Softwareentwicklung wird Golang (Go-Sprache) als effiziente, prägnante und hochgradig parallele Programmiersprache von Entwicklern zunehmend bevorzugt. Seine umfangreiche Standardbibliothek und die effizienten Parallelitätsfunktionen machen es zu einer hochkarätigen Wahl im Bereich der Spieleentwicklung. In diesem Artikel wird untersucht, wie man Golang für die Spieleentwicklung verwendet, und seine leistungsstarken Möglichkeiten anhand spezifischer Codebeispiele demonstriert. 1. Golangs Vorteile bei der Spieleentwicklung: Als statisch typisierte Sprache wird Golang beim Aufbau großer Spielsysteme verwendet.

Implementierungsleitfaden für PHP-Spielanforderungen Mit der Popularität und Entwicklung des Internets erfreut sich der Markt für Webspiele immer größerer Beliebtheit. Viele Entwickler hoffen, die PHP-Sprache zur Entwicklung ihrer eigenen Webspiele nutzen zu können, und die Umsetzung der Spielanforderungen ist ein wichtiger Schritt. In diesem Artikel wird erläutert, wie Sie mithilfe der PHP-Sprache allgemeine Spielanforderungen implementieren und spezifische Codebeispiele bereitstellen. 1. Spielfiguren erstellen In Webspielen sind Spielfiguren ein sehr wichtiges Element. Wir müssen die Attribute des Spielcharakters wie Name, Level, Erfahrungswert usw. definieren und Methoden für deren Bedienung bereitstellen

Titel: jQuery-Tipps: Ändern Sie schnell den Text aller Tags auf der Seite. In der Webentwicklung müssen wir häufig Elemente auf der Seite ändern und bedienen. Wenn Sie jQuery verwenden, müssen Sie manchmal den Textinhalt aller a-Tags auf der Seite gleichzeitig ändern, was Zeit und Energie sparen kann. Im Folgenden wird erläutert, wie Sie mit jQuery den Text aller Tags auf der Seite schnell ändern können, und es werden spezifische Codebeispiele angegeben. Zuerst müssen wir die jQuery-Bibliotheksdatei einführen und sicherstellen, dass der folgende Code in die Seite eingefügt wird: <

Titel: Verwenden Sie jQuery, um den Textinhalt aller Tags zu ändern. jQuery ist eine beliebte JavaScript-Bibliothek, die häufig zur Verarbeitung von DOM-Operationen verwendet wird. Bei der Webentwicklung müssen wir häufig den Textinhalt des Link-Tags (eines Tags) auf der Seite ändern. In diesem Artikel wird erläutert, wie Sie mit jQuery dieses Ziel erreichen, und es werden spezifische Codebeispiele bereitgestellt. Zuerst müssen wir die jQuery-Bibliothek in die Seite einführen. Fügen Sie den folgenden Code in die HTML-Datei ein:

Es tut mir wirklich leid, dass ich keine Echtzeit-Programmieranleitung geben kann, aber ich kann Ihnen ein Codebeispiel zur Verfügung stellen, um Ihnen ein besseres Verständnis dafür zu vermitteln, wie Sie PHP zur Implementierung von SaaS verwenden. Es folgt ein Artikel mit 1.500 Wörtern und dem Titel „Verwendung von PHP zur Implementierung von SaaS: Eine umfassende Analyse“. Im heutigen Informationszeitalter ist SaaS (Software as a Service) zur gängigen Art der Softwarenutzung für Unternehmen und Privatpersonen geworden. Es bietet eine flexiblere und bequemere Möglichkeit, auf Software zuzugreifen. Mit SaaS müssen Benutzer nicht vor Ort sein
