後臺代碼:
<span style="white-space:pre"> </span>String fid = request.getParameter("fid");
if("Root".equals(fid)){
fid = Tools.getFilePath()+"MBXM/ZYDL/";
}
JSONArray array = new JSONArray();
JSONArray array1 = new JSONArray();
JSONArray array2 = new JSONArray();
File file = new File(fid);
//List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
if(file.exists()){
if(file.isDirectory()){
File [] filelist = file.listFiles();
if(filelist!=null&&filelist.length>0){
for (File files : filelist) {
//Map<String, Object> map = new HashMap<String, Object>();
JSONObject obj1 = new JSONObject();
JSONObject obj2 = new JSONObject();
//是否有下一級
obj1.put("fid",files.getAbsolutePath());
obj1.put("text", files.getName());
obj2.put("fid",files.getAbsolutePath());
obj2.put("text", files.getName());
if(files.list() !=null && files.list().length >=0){
obj1.put("leaf", false);
array1.add(obj1);
}else {
obj2.put("leaf", true);
array2.add(obj2);
}
}
}
}
}
for(int i=0;i<array1.size();i++){
array.add(array1.get(i));
}
for(int i=0;i<array2.size();i++){
array.add(array2.get(i));
}
msg = array.toString();
前臺頁面:
var left_fs = new Ext.tree.TreePanel({
//height : 100,
id:'menuTree',
height : 440,
columnWidth : 0.5,
useArrows : true,
animate : true,
autoScroll:true,
//enableDD : false,
root :new Ext.tree.AsyncTreeNode({
fid : 'Root',
text:'選擇個性化頁面(單擊刷新)',
expanded : true,
draggable : false,
listeners:{
click:function(node){
node.reload();
}
}
}),
loader : new Ext.tree.TreeLoader({
dataUrl:basePath+'servlet/back/CZZDglS?type=cxZYDLTree&KHID='+KHID+'&check=false',
listeners : {
beforeload : function(TreeLoader, node) {
var fid = node.attributes.fid;
this.baseParams.fid = fid;
}
}
}),
listeners : {
click : function(node){
if(node.isLeaf()){
var GXHYMLJ = node.attributes.fid;
//var start = 'D:/ITAPWH/files/MBXM/ZYDL/';
var start = filePath +'MBXM/ZYDL/';
GXHYMLJ = GXHYMLJ.substring(start.length-1,GXHYMLJ.length);
var array = GXHYMLJ.split('\\');
var GXHYMLJ_new ='';
for(var i=0;i<array.length;i++){
GXHYMLJ_new = GXHYMLJ_new + array[i];
GXHYMLJ_new = GXHYMLJ_new + '/';
}
GXHYMLJ_new = GXHYMLJ_new.substring(0,GXHYMLJ_new.length-1);
var Plant = gxhym_store.recordType;
var p = new Plant({
YMLJ: GXHYMLJ_new
});
var data=gxhym_store.data;
var array = [];
var all_ymlj ='';
var flag = false;
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
var rec = data.get(i);
var YMLJ = rec.get('YMLJ');
if(YMLJ !=undefined){
all_ymlj = all_ymlj + "," + "'" + YMLJ + "'";
}
if(all_ymlj.indexOf("'" + GXHYMLJ_new + "'") != -1){
flag = true;
}
}
}
if(flag){
Ext.Msg.show({
title : '提示',
msg : "頁面路徑[" + GXHYMLJ_new + "]重複,請重新選擇",
buttons : {
"ok" : "確定"
},
icon : Ext.MessageBox.INFO
});
return;
}
gxhym_store.insert(gxhym_store.data.length-1, p);
}
}
}
});