Heim  >  Artikel  >  Web-Frontend  >  EasyUI implementiert einen asynchronen Baum in jquery_jquery

EasyUI implementiert einen asynchronen Baum in jquery_jquery

WBOY
WBOYOriginal
2016-05-16 16:12:00962Durchsuche

Das Frontend wird mit EasyUI implementiert. EasyUI übergibt einen ID-Parameter an das Backend.

Beim ersten Laden ist die an den Hintergrund übergebene ID null.

Jedes Mal, wenn der Baumknoten erweitert wird, wird die ID des aktuellen Knotens an den Hintergrund übergeben.

Kontrollebene:

Code kopieren Der Code lautet wie folgt:

/**
  * Baum
 */
@RequestMapping(value = "/tree.do")
public void mytree(HttpServletResponse Antwort, String-ID) {
This.writeJson(response, bookService.getChildrenTree(id));
}

Serviceschicht:

Code kopieren Der Code lautet wie folgt:

@Transactional
@Override
public List getChildrenTree(String pid) {
versuche es mit {
List result = new ArrayList();
//Liste der untergeordneten Knoten abrufen
List childrenList = this.getChildrenType(pid);
if (childrenList != null && childrenList.size() > 0) {
for (TBookType child :childrenList) {
// Ermitteln Sie die Anzahl der Enkelkinder
Lange Zählung = bookDao.getChildrenCount(String.valueOf(child.getId()));
Baumknoten = neuer Baum();
Node.setId(String.valueOf(child.getId()));
Node.setPid(String.valueOf(child.getPid()));
Node.setText(child.getName());
Node.setChildren(null);
​​ node.setState(count > 0 ? "closed" : "open");
//Speichern Sie die ChildrenList-Daten einzeln im Baum
result.add(node);
}
}
Ergebnis zurückgeben;
} Catch (Ausnahme e) {
throw new BusinessException("Beim Abrufen der Buchtypdaten ist ein Fehler aufgetreten!", e);
}
}

Dao-Schicht:

Code kopieren Der Code lautet wie folgt:

@Override
public List getChildrenType(String pid) {
// Die PID davon ist die ID des aktuell erweiterten Knotens, und der untergeordnete Knoten wird über die ID des übergeordneten Knotens erhalten
StringBuilder sqlstr = new StringBuilder();
if (StringUtils.isBlank(pid))
sqlstr.append("select * from booktype bt where bt.pid=0");
sonst
sqlstr.append("select * from booktype bt where bt.pid=" pid );
Geben Sie this.search2(TBookType.class, sqlstr.toString());
zurück }

Code kopieren Der Code lautet wie folgt:

@Override
public long getChildrenCount(String pid) {
// Die PID davon ist die ID des aktuell erweiterten Knotens, und die Anzahl der untergeordneten Knoten wird über die ID des übergeordneten Knotens
ermittelt StringBuilder sqlstr = new StringBuilder();
if (StringUtils.isBlank(pid))
sqlstr.append("select count(*) from booktype tb where tb.pid='0'");
sonst
sqlstr.append("select count(*) from booktype tb where tb.pid='" pid "'");
Geben Sie this.count(sqlstr.toString());
zurück }

Das Obige ist der gesamte Code dieses Artikels über die Implementierung asynchroner Bäume durch EasyUI. Ich hoffe, er wird für alle hilfreich sein.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn