zTree相关

wylc123 1年前 ⋅ 243 阅读

 

怎么样在jQuery的ztree上加点击事件

在setting里面设置onclick事件

function zTreeOnClick(event, treeId, treeNode) {
    alert(treeNode.tId + ", " + treeNode.name);
};
var setting = {
	callback: {
		onClick: zTreeOnClick
	}
};

java后台实现类代码:

public void deal(JWRequest request, JWResponse response)
throws ErrorCodeException {
// TODO Auto-generated method stub
String action = request.getAction();
if ("getVipByStatus".equalsIgnoreCase(action)) {
getVipLists(request, response);
}
}
    private void getVipLists(JWRequest request, JWResponse response) {
    VipExample example = new VipExample();
List<Vip> vipList = this.vipDao.selectByExample(example);
// String s=vipList.toString();
// System.out.println(s);
// 转换成ztree格式
JSONArray ztreeNodes = new JSONArray();
JSONObject json = new JSONObject();
json.put("id", 0);
json.put("pId", -1);
json.put("name", "所有会员");
json.put("open", true);
json.put("icon", "web/images/sm_role.png");
ztreeNodes.add(json);

for (Vip user: vipList) {
json = new JSONObject();
json.put("id", user.getWxid());
json.put("pId", "0");
json.put("name", user.getName());
json.put("icon", "web/images/sm_user.png");
json.put("mobile", user.getMobile());
json.put("birthday", user.getBirthday());
json.put("image", user.getImage());
json.put("cash", user.getCash());
json.put("updatetime", user.getUpdatetime());
ztreeNodes.add(json);
}

JSONObject resData = new JSONObject();
resData.put("ztreeNodes", ztreeNodes);
response.setData(resData);
}

ztree设置节点checked,选中某节点等相关操作

1、根据id获取树的某个节点:

 var zTree = $.fn.zTree.getZTreeObj("mytree");

 var node = zTree.getNodeByParam("id",1);

2、设置node节点选中状态:

zTree.selectNode(node);

3、设置node节点checked选中,有两种方法实现:

(1)、zTree.checkNode(node, true, true);

(2)、node.checked = true;
    zTree.updateNode(node);  //注:设置checked属性之后,一定要更新该节点,否则会出现只有鼠标滑过的时候节点才被选中的情况

4、获取树的根节点:

var nodes = zTree.getNodes(); 

var pnode = nodes[0]; //注:只有当树的根节点只有一个时,才可以这样取,否则会获取到多个节点

5、ztree获取选中节点的子节点的方法://该方法参考自:http://my.oschina.net/webas/blog/110295,本人还未测试。。

var nodes = zTree.getSelectedNodes();

var treeNode = nodes[0];

var treeNodeP = treeNode.parentTId ? treeNode.getParentNode():null;

for(var i=0;i<treeNode.children.length;i++) {

  var childNode = treeNode.children[i];

  alert('childNode.name: '+childNode.name);

}

6、递归获取各级父节点##
 function getFilePath(treeObj){
  if(treeObj==null)return "";
  var filename = treeObj.name;
  var pNode = treeObj.getParentNode();
  if(pNode!=null){
      filename = getFilePath(pNode) +"->"+ filename;
  }
  return filename;
 }

更多内容请访问:IT源点

相关文章推荐

全部评论: 0

    我有话说: