ajax+json+ztree

最近项目资源分类太多 要求ajax分布加载


 

<a href="javascript:;"  id="input_format_list_a" οnclick="ztree_init('format_list');" >资源格式</a>&nbsp;<input id="input_format_list" type="hidden" name="category['format_list']" readonly value="" style="width:120px;"  />
 <div id="menuContent" style="display:none; position: absolute;z-index: 9999">
                                <ul id="edu_type" class="ztree"></ul>
 

 

 

 

var setting = {
		check: {
			enable: true,
			chkboxType: {"Y":"ps", "N":"ps"}
		},
		view: {
			dblClickExpand: false
		},
		data: {
			simpleData: {
				enable: true
			}
		},
		callback: {
			beforeClick: beforeClick,
			onCheck: onCheck
		}
	};

	//从后台读取数据

	function beforeClick(treeId, treeNode) {
		var zTree = $.fn.zTree.getZTreeObj(treeId);
		zTree.checkNode(treeNode, !treeNode.checked, null, true);
		return false;
	}
	
	function onCheck(e, treeId, treeNode) {
		var zTree = $.fn.zTree.getZTreeObj(treeId),
		nodes = zTree.getCheckedNodes(true),
		v = "";
		//返回checkbox值
		for (var i=0, l=nodes.length; i<l; i++) {
			if(!nodes[i].isParent){
				v += nodes[i].name + ",";//多值用,隔开
			}
		}
		if (v.length > 0 ) v = v.substring(0, v.length-1);
		var cityObj = $("#input_"+treeId);
		cityObj.attr("value", v);
	}
	function showMenu(v) {
		var cityObj = $("#input_"+v+"_a");
		var cityOffset = $("#input_"+v+"_a").position();
		$("#menuContent ul" ).hide();
		$("#"+v).show();
		$("#menuContent").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");

		$("body").bind("mousedown", onBodyDown);
	}
	function hideMenu() {
		$("#menuContent").fadeOut("fast");
		$("body").unbind("mousedown", onBodyDown);
	}
	function onBodyDown(event) {
		if (!(event.target.id == "menuBtn" || event.target.id == "citySel" || event.target.id == "menuContent" || $(event.target).parents("#menuContent").length>0)) {
			hideMenu();
		}
	}
	function Node(id,pid,name){
		this.id=id;
		this.pId=pid;
		this.name=name;
								
	}

	function ztree_init(v){
		//从后台读取数据				
		var treeNodes=new Array();		
		$.ajax({
				url: '<?php echo elgg_add_action_tokens_to_url(elgg_get_site_url().'action/ztree/getdata')?>',
				type:'post',
				data:{id:v},
				async: false , 
				success: function(data){
					if(data=='error'){
							return false;
						}				
					var msg = eval('(' + data + ')');
					$.each(msg,function(i,item){
						treeNodes.push(new Node(item.id,item.pId,item.name));
					});
					//alert(treeNodes[0].pId);
					//初始化ztree
					$.fn.zTree.init($("#"+v), setting, treeNodes);
					showMenu(v)	
			 	}
			})
		
		

	}

 后台返回json数据

 

 

<?php
/**
 *根据id 返回 资源分类 
 */

$id=get_input('id');
if(empty($id)){
	echo 'error';
	exit;
}
$output=redis_get_cache_content("typeselect:$id");
$output=!empty($output)?$output:'error';	
echo $output;
exit();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值