웹 프론트엔드 JS 튜토리얼 jquery zTree 비동기 로딩 간단한 예제 Sharing_jquery

jquery zTree 비동기 로딩 간단한 예제 Sharing_jquery

May 16, 2016 pm 05:42 PM
비동기 로딩

먼저 Ztree 공식 웹사이트 http://www.ztree.me를 제공하세요.
Ztree는 jQuery를 사용하여 구현된 JSP 페이지의 다양한 기능 트리입니다. 이 기사에서는 드롭다운 트리로 데이터를 비동기적으로 가져오는 구현 방법을 소개합니다.
현재 버전 Ztree 3.5.01
simple.html

코드 복사 코드는 다음과 같습니다.

<!DOCTYPE html>
<head>
<title>simple.html</title> -equiv= "keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="이것은 내 페이지입니다"> "content- type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="css/zTreeStyle.css"> 🎜>&lt ;script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.ztree. core-3.5 .js"></script>
<script type="text/javascript" src="js/jquery.ztree.excheck-3.5.min.js"></script>
<!-- <script type="text/javascript" src="js/standard.js"></script> --> " src= "js/1.js"></script>
</head>
<body>
<div class="zTreeDemoBackground left"><ul id ="treeDemo " class="ztree"></ul></div>
</body>


js




코드 복사


코드는 다음과 같습니다.
var 설정 = { data: { simpleData: { enable: true // idKey: "id",
// pIdKey: "pId",
}
}
, async: {
활성화: true,
url:"/Java_Solr/servlet/ZTreeSerlvet",
autoParam:["id", "name"],
otherParam:{"otherParam":"zTreeAsyncTest"},
// dataType: " text",//기본 텍스트
// type: "get",//기본 게시물
dataFilter: filter //비동기 반환 후 filter
}
,callback :{
/ / beforeAsync: zTreeBeforeAsync, // 비동기 로딩 이벤트 이전에 해당 정보를 가져옵니다.
asyncSuccess: zTreeOnAsyncSuccess, // 비동기적으로 로드된 fun
asyncError: zTreeOnAsyncError, // 잘못된 fun을 로드합니다
beforeClick:beforeClick //노드를 클릭하기 전 이벤트 콜백 함수 캡처
}
}
//treeId는 treeDemo
function filter(treeId, parentNode, childNodes) {
if (! childNodes) return null;
for (var i=0, l=childNodes.length; i<l; i ) {
childNodes[i].name = childNodes[i].name.replace('', '');
}
return childNodes;
}
function beforeClick(treeId,treeNode){
if(!treeNode.isParent){
alert("부모를 선택하세요. node");
false 반환;
}else{
true 반환;
}
}
function zTreeOnAsyncError(event, treeId, treeNode){
alert("Asynchronous 로드 실패!");
}
function zTreeOnAsyncSuccess(event, treeId, treeNode, msg){

}
/***********************부모 노드를 클릭하면 서블릿이 비동기적으로 액세스되고 ID가 전달됩니다 ********* ****** ****************/
var zNodes=[ ];
/* var zNodes =[
{ id:1, pId:0, name:"parentNode 1", open:true},
{ id:11, pId:1, name:" parentNode 11"},
{ id:111, pId:11, name:"leafNode 111"},
{ id:112, pId:11, name:"leafNode 112"},
{ id :113, pId:11, 이름:"leafNode 113"},
{ id:114, pId:11, 이름:"leafNode 114"},
{ id:12, pId:1, 이름:" parentNode 12"},
{ id:121, pId:12, name:"leafNode 121"},
{ id:122, pId:12, name:"leafNode 122"},
{ id :123, pId:12, 이름:"leafNode 123"},
{ id:13, pId:1, 이름:"parentNode 13", isParent:true},
{ id:2, pId:0 , 이름:"parentNode 2" , isParent:true}
] */
$(document).ready(function(){
$.fn.zTree.init($("#treeDemo" ), 설정, zNodes)
});


zTree 객체 가져오기: var zTree = $.fn.zTree.getZTreeObj("treeDemo"),
ZtreeServlet



코드 복사


코드는 다음과 같습니다.

패키지 org.hzy.servlets;
java.io.IOException 가져오기;
java.io.PrintWriter 가져오기;
java.util.ArrayList 가져오기;
java.util.List 가져오기;
javax.servlet.ServletException 가져오기;
javax.servlet.http.HttpServlet 가져오기;
javax.servlet.http.HttpServletRequest 가져오기;
javax.servlet.http.HttpServletResponse 가져오기;
org.hzy.bean.ZtreeBean 가져오기;
com.alibaba.fastjson.JSON 가져오기;
공용 클래스 ZTreeSerlvet은 HttpServlet을 확장합니다. {
public void destroy() {
super.destroy();
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println(request.getParameter("id") " " request.getParameter("name") " " request.getParameter("otherParam"));
response.setCharacterEncoding("UTF-8");
PrintWriter 출력 = response.getWriter();
ZtreeBean zb = new ZtreeBean(0, -1, "zb", true);
ZtreeBean zb1 = new ZtreeBean(1, 0, "zb1", true);
ZtreeBean zb2 = new ZtreeBean(2, 1, "zb2", false);
ZtreeBean zb3 = new ZtreeBean(2, 0, "zbss", true);
목록 list = new ArrayList<ZtreeBean>();
list.add(zb);
list.add(zb1);
list.add(zb2);
list.add(zb3);
String str = JSON.toJSONString(list);
out.print(str);
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
public void init()에서 ServletException 발생 {
}
}
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Ajax 예외 노출 및 오류 해결 방법 목록 Ajax 예외 노출 및 오류 해결 방법 목록 Jan 30, 2024 am 08:33 AM

Ajax 예외 노출 및 오류 해결 방법 목록

jQuery .val()이 작동하지 않는 상황을 효과적으로 처리합니다. jQuery .val()이 작동하지 않는 상황을 효과적으로 처리합니다. Feb 20, 2024 pm 09:36 PM

jQuery .val()이 작동하지 않는 상황을 효과적으로 처리합니다.

Ajax 기반의 Scrapy 비동기 로딩 구현 방법 Ajax 기반의 Scrapy 비동기 로딩 구현 방법 Jun 22, 2023 pm 11:09 PM

Ajax 기반의 Scrapy 비동기 로딩 구현 방법

HTML을 읽는 방법 HTML을 읽는 방법 Apr 05, 2024 am 08:36 AM

HTML을 읽는 방법

Vue3의 정지 기능에 대한 자세한 설명: 비동기 데이터 로딩 최적화 Vue3의 정지 기능에 대한 자세한 설명: 비동기 데이터 로딩 최적화 Jun 18, 2023 am 08:10 AM

Vue3의 정지 기능에 대한 자세한 설명: 비동기 데이터 로딩 최적화

Vue3의 DefineAsyncComponent 함수에 대한 자세한 설명: 비동기 로딩 컴포넌트 적용 Vue3의 DefineAsyncComponent 함수에 대한 자세한 설명: 비동기 로딩 컴포넌트 적용 Jun 18, 2023 pm 07:39 PM

Vue3의 DefineAsyncComponent 함수에 대한 자세한 설명: 비동기 로딩 컴포넌트 적용

C# 위임이란 무엇이며 어떤 문제를 해결합니까? C# 위임이란 무엇이며 어떤 문제를 해결합니까? Apr 04, 2024 pm 12:42 PM

C# 위임이란 무엇이며 어떤 문제를 해결합니까?

WordPress에서 페이지 리디렉션을 방지하는 방법은 무엇입니까? WordPress에서 페이지 리디렉션을 방지하는 방법은 무엇입니까? Mar 05, 2024 am 09:33 AM

WordPress에서 페이지 리디렉션을 방지하는 방법은 무엇입니까?

See all articles