JSFiddle - React, Tailwind, and code Playground
HTML
<link rel="stylesheet" href="http://cdn.kendostatic.com/2012.3.1315/styles/kendo.common.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2012.3.1315/styles/kendo.default.min.css">
<script src="http://cdn.kendostatic.com/2012.3.1315/js/kendo.all.min.js"></script>
<ul id='panelbar'>
<li id='patDet' class='k-state-active'> <span class='k-link k-state-selected'>
<input type='checkbox' id='cPatientDetails' />
<label for='cPatientDetails'><a href='#' id='cbSelect'></a>Patient Detail
</label>
</span>
<div id='patTab'></div>
</li>
<li id='tabUploadFiles' class='k-item k-last k-state-default' aria-expanded='false'>
<input type='checkbox' id='cUpload' />
<label for='cUpload'><a href='#' id='cbSelect'></a>Uploaded Documents and Images</label>
<div id='gridUploadedFiles' width='400px;'></div>
</li>
</ul>
CSS
input[type="checkbox"] {
display:none;
}
input[type="checkbox"] + label a {
clear:right;
display:inline-block;
width:18px;
height:18px;
margin:-1px 4px 0 0;
vertical-align:middle;
background:url('http://www.yourcolor.net/java/wp-content/uploads/2013/04/check_radio_sheet1.png') left top no-repeat;
cursor:pointer;
float:right;
margin-top:5px;
margin-left:10px;
}
input[type="checkbox"]:checked + label a {
background:url('http://www.yourcolor.net/java/wp-content/uploads/2013/04/check_radio_sheet1.png') -19px top no-repeat;
}
.k-panelbar .k-panelbar-expand, .k-panelbar .k-panelbar-collapse {
right: auto;
left: 2px;
}
.k-panelbar>.k-item>.k-link {
padding: 0 0 0 1.3em;
}
.k-panelbar-expand, .k-panelbar-expand, .k-panelbar-collapse {
top:8px;
}
JavaScript
$("#panelbar").kendoPanelBar({
expandMode: "single"
});
var chkBox = "<input type='checkbox' id='chUpload' /><label for='chUpload'><a href='#' id='cbChoose'></a>test</label>";
var uploadedFiles = [{
facility: "Sunrise medical Laboratories",
documentName: "Lab Results",
documentType: "PDF",
selected: chkBox
}, {
facility: "New York Downtown Hospital",
documentName: "Liver Scan Results",
documentType: "JPG",
selected: chkBox
}];
var myDataSource = new kendo.data.DataSource({
data: uploadedFiles,
pageSize: 10
});
$("#gridUploadedFiles").kendoGrid({
columns: [{
title: "Facilities",
field: "facility",
width: 260
}, {
title: "Document Name",
field: "documentName",
width: 430
}, {
title: "Document Type",
field: "documentType",
width: 140
}, {
title: "Selected",
template: "#= selected #"
}],
dataSource: {
data: uploadedFiles
},
height: 285,
scrollable: false
});
$("#panelbar").on("click", "label a", function (evt) {
var chkbx = $(this).closest('span').find('input');
var chkbxGrid = $(this).closest('td').find('input');
chkbx.prop('checked', !chkbx.prop('checked'));
chkbxGrid.prop('checked', !chkbxGrid.prop('checked'));
evt.stopImmediatePropagation();
})