easyui tree实现checkOnSelect效果

Javascript piniu 1189浏览 0评论
<div class='tree-demo'>
	<ul id="regionTree"></ul>
</div>

全部js代码:

$('#regionTree').tree({
	cascadeCheck: false,
	//onlyLeafCheck: true,
	checkbox: true,
	data: [{
		"id": 1,
		"text": "My Documents",
		"children": [{
			"id": 11,
			"text": "Photos",
			"state": "closed",
			"children": [{
				"id": 111,
				"text": "Friend"
			}, {
				"id": 112,
				"text": "Wife"
			}, {
				"id": 113,
				"text": "Company"
			}]
		}, {
			"id": 12,
			"text": "Program Files",
			"children": [{
				"id": 121,
				"text": "Intel"
			}, {
				"id": 122,
				"text": "Java",
				"attributes": {
					"p1": "Custom Attribute1",
					"p2": "Custom Attribute2"
				}
			}, {
				"id": 123,
				"text": "Microsoft Office"
			}, {
				"id": 124,
				"text": "Games",
				"checked": true
			}]
		}, {
			"id": 13,
			"text": "index.html"
		}, {
			"id": 14,
			"text": "about.html"
		}, {
			"id": 15,
			"text": "welcome.html"
		}]
	}]
	,
	width: 160,
	height: 32,
	panelHeight: 400,
	onSelect: function (node) {
		var cknodes = $('#regionTree').tree("getChecked");
		for (var i = 0; i < cknodes.length; i++) {
			if (cknodes[i].id != node.id) {
				$('#regionTree').tree("uncheck", cknodes[i].target);
			}
		}
		if (node.checked) {
			$('#regionTree').tree('uncheck', node.target);
 
		} else {
			$('#regionTree').tree('check', node.target);
 
		}
 
	},
	onLoadSuccess: function (node, data) {
		$(this).find('span.tree-checkbox').unbind().click(function () {
			$('#regionTree').tree('select', $(this).parent());
			return false;
		});
	}
})

关键JS代码:

onSelect: function (node) {
	var cknodes = $('#regionTree').tree("getChecked");
	for (var i = 0; i < cknodes.length; i++) {
		if (cknodes[i].id != node.id) {
			$('#regionTree').tree("uncheck", cknodes[i].target);
		}
	}
	if (node.checked) {
		$('#regionTree').tree('uncheck', node.target);
 
	} else {
		$('#regionTree').tree('check', node.target);
 
	}
 
},
onLoadSuccess: function (node, data) {
	$(this).find('span.tree-checkbox').unbind().click(function () {
		$('#regionTree').tree('select', $(this).parent());
		return false;
	});
}

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • * 昵称:
  • * 邮箱: