jQuery를 EasyUI 메뉴 트리 - 페이지 그리드를 추가 할 수있는 트리
이 튜토리얼은 그리드 (TreeGrid에)와 함께 나무의 동적 특성을로드 탭을 추가하는 방법을 보여줍니다.
나무 격자 생성 (TreeGrid에)
페이지가로드 될 수 있도록 서버에 속성 전송됩니다 '페이지'와 '행'인수 : 나무 격자 (TreeGrid에) 페이징 기능을 활성화, 당신은 '사실이 매김'를 추가해야합니다.
<표 제목 = "제품"클래스 = "easyui-TreeGrid에"스타일 = "너비 : 700 픽셀, 높이 300 픽셀" 데이터 옵션 = " URL : 'treegrid4_getdata.php' rownumbers : 사실, 페이지 매김 : 사실, pageSize가 : 2, pageList : [2,10,20] idField '아이디', treeField '이름', onBeforeLoad : 기능 (행, PARAM) { (! 행) {//로드 최상위 행의 경우 param.id = 0; // 설정 ID = 0, 새 페이지 행을로드 표시 } } "> <THEAD> <TR> <목 필드 = "이름"너비 = "250"> 이름 </ 일> <제 /> 수량 <목 필드 = "양"너비 = "100"= "권리"정렬> 가격 <목 필드 = "가격"너비 = "150"= "formatDollar"= "오른쪽"포매터를 정렬> </ 번째> 총 </ 일> <목 필드 = "총"너비 = "150"= "오른쪽"포맷 = "formatDollar"를 정렬> </ TR> </ THEAD> </ 테이블>
서버 측 코드
treegrid4_getdata.php
? $ 페이지 =에는 isset ($ _ POST [ '페이지']) INTVAL ($ _ POST [ '페이지']) : 1; ? $ 행의 =의에는 isset ($ _ POST [ '행']) INTVAL ($ _ POST [ '행']) : 10; $ = ($ 페이지-1) * $ 행 오프셋; $ 식에는 isset ($ _ POST [ 'ID']) INTVAL ($ _ POST [ 'ID']) : 0;? 'conn.php'를 포함; $ 결과 = 배열 (); 경우 ($ 아이디 == 0) { ; $ 루피 = 상 mysql_query ( "제품의 경우 parentId = 0 카운트 (*)를 선택") $ 행 = mysql_fetch_row () 함수 ($ RS); $ 결과 [ "총"] = $ 행 [0] $ 루피 = 상 mysql_query ( "parentId = 0 제한, $ 행을 상쇄 $ 제품에서 * 선택"); $ 항목 = 배열 (); 동안 ($ 행 =은 mysql_fetch_array ($ RS)) { ? $ 행 [ '상태'] = has_child ($ 행 [ 'ID']) '폐쇄': '개방'; ($ 항목, $ 행) array_push; } $ [ "행"] = $ 항목을 결과; } 그밖에 { $ 루피 = 상 mysql_query ( "제품 SELECT * FROM 곳 parentId = $ ID"); 동안 ($ 행 =은 mysql_fetch_array ($ RS)) { ? $ 행 [ '상태'] = has_child ($ 행 [ 'ID']) '폐쇄': '개방'; $ 행 [ '총'] = $ 행 [ '가격'] * $ 행 [ '양']; ($ 결과, $ 행) array_push; } } 에코하여 json_encode ($ 결과); 기능 has_child ($ 아이디) { $ 루피 = 상 mysql_query ( "제품의 수 (*)를 선택한 경우 parentId = $ ID"); $ 행 =은 mysql_fetch_array ($ RS); $ 행을 반환 [0]> 0 사실 :? 거짓; }
서버 매개 변수로 전송을 포함한다 :
- 페이지 : 현재 페이지가로드.
- 행 : 페이지 크기.
- ID : 서버에서 반환 상위 행 값의 ID가 추가 될하려고합니다.
만약 노드 행을 확장하면 'ID'값은 0보다 크다. 항목을 변경하는 경우, '아이디'값은 부하 자식 행을 배치하는 0으로 설정해야합니다.