Checkboxes events

checkboxes events
logs
with logs:
</> Source
<!DOCTYPE html>
<html>
<head>
	<title>Checkboxes events</title>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
	<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
	<link rel="stylesheet" type="text/css" href="../../../codebase/fonts/font_roboto/roboto.css"/>
	<link rel="stylesheet" type="text/css" href="../../../codebase/dhtmlx.css"/>
	<script src="../../../codebase/dhtmlx.js"></script>
	<style>
		div.sample_info_here {
			position: relative;
			width: auto;
			margin: 20px;
			font-family: Roboto, Arial, Helvetica;
			font-size: 14px;
			color: #404040;
		}
		div.sample_info_here div.sample_info_title {
			line-height: 18px;
			font-size: 15px;
			color: #3b5e7c;
		}
		div#tree_here {
			position: relative;
			border: 1px solid #dfdfdf;
			box-shadow: 0 1px 3px rgba(0,0,0,0.05), 0 1px 3px rgba(0,0,0,0.09);
			width: 350px;
			height: 400px;
			margin-left: 20px;
			margin-bottom: 20px;
		}
		div.controls {
			position: relative;
			width: auto;
			margin: 0px 20px 20px 20px;
			font-family: Roboto, Arial, Helvetica;
			font-size: 14px;
			color: #404040;
		}
		div.controls input {
			font-family: Roboto, Arial, Helvetica;
			font-size: 14px;
			color: #404040;
		}
		div#logs_here {
			position: relative;
			height: 170px;
			width: auto;
			margin: 20px;
			border: 1px solid #dfdfdf;
			padding: 4px;
			font-size: 12px;
			font-family: Roboto, Arial, Helvetica;
			font-size: 14px;
			color: #404040;
			overflow: auto;
		}
	</style>
	<script>
		var myTreeView, logIndex = 0;
		function doOnLoad() {
			myTreeView = new dhtmlXTreeView({
				parent: "tree_here",
				checkboxes: true,
				json: "../common/treeview_checkboxes.json"
			});
			myTreeView.attachEvent("onBeforeCheck", function(id, state){
				writeLog("onBeforeCheck event, id: "+id+" ("+this.getItemText(id)+"), old state: "+(state?"checked":"unchecked"));
				return true; // allow state-change
			});
			myTreeView.attachEvent("onCheck", function(id, state){
				writeLog("onCheck event, id: "+id+" ("+this.getItemText(id)+"), new state: "+(state?"checked":"unchecked"));
			});
		}
		function writeLog(text) {
			document.getElementById("logs_here").innerHTML += "<br>"+"["+(++logIndex)+"] "+text;
			document.getElementById("logs_here").scrollTop = document.getElementById("logs_here").scrollHeight;
		}
		function clearLog() {
			document.getElementById("logs_here").innerHTML = "<u>logs</u>";
		}
	</script>
</head>
<body onload="doOnLoad()">
	<div class="sample_info_here">
		<div class="sample_info_title">checkboxes events</div>
	</div>
	<div id="tree_here"></div>
	<div id="logs_here"><u>logs</u></div>
	<div class="controls">
		with logs: <input type="button" value="clear" onclick="clearLog();">
	</div>
</body>
</html>

Documentation

Check documentation to learn how to use the components and easily implement them in your applications.