or
ktvGradeLevelFilter = $("#gradeLevelFilterTree").kendoTreeView({
dataTextField: ["text", "GradeLevelID"],
dataSource: {
transport: {
read: function (options) {
$.getJSON(Helpers.toServicesUrl("/GetfltEWSGradeLevel"),
{
username: Context.UserName,
districtId: Context.DistrictId,
// schoolType: "H"
schoolType: schoolTypeParm //ktvSchoolFilter.getSelectedSchoolType()
},
function (data) {
gradeLevelData = data.GetfltEWSGradeLevelResult.RootResults;
gradeLevelData = [{
text: "Grade Level(Counts by Risk Factor)",
items: gradeLevelData,
expanded: false
}];
options.success([]);
ktvGradeLevelFilter.dataSource.data(gradeLevelData);
}).fail(function (jqXHR) {
options.error(jqXHR);
});
}
},
schema: {
model: {
children: "items"
}
}
},
checkboxes: {
checkChildren: true
}
}).data("kendoTreeView");
<
div
data-role
=
"pane"
id
=
"left-pane"
data-layout
=
"side-default"
data-transition
=
"slide"
>
<
div
data-role
=
"layout"
data-id
=
"side-default"
data-show
=
"toggleBackButton"
>
<!-- layout stuff here -->
</
div
>
<
div
data-role
=
"view"
id
=
"side-view"
>
<!-- Left Panel Content -->
<
ul
data-role
=
"listview"
data-style
=
"inset"
>
<
li
><
a
href
=
"#testview"
>Commercial Services</
a
></
li
>
<
li
><
a
href
=
"testview.html"
>Litigation Services</
a
></
li
>
<
li
><
a
href
=
"views/paneviews/private_client_services/index.html"
>Private Client Services</
a
></
li
>
</
ul
>
<!-- -->
</
div
>
<
div
data-role
=
"view"
id
=
"testview"
>
<
p
>Test view</
p
>
</
div
>
</
div
>
<
div
data-role
=
"view"
id
=
"side-view"
>
<
p
>This is a remote view</
p
>
</div
<
record
number
=
"3"
>
<
nid
>3</
nid
>
<
column1
>row3col1</
column1
>
<
column2
>BBBtxt,CCCtxt</
column2
>
<
mval
>BBBval,CCCval</
mval
>
</
record
>
<
record
number
=
"4"
>
<
nid
>4</
nid
>
<
column1
>row4col1</
column1
>
<
column2
>BBBtxt,CCCtxt</
column2
>
<
mval
>BBBval</
mval
>
<
mval
>CCCval</
mval
>
</
record
>
<
record
number
=
"2"
>
<
nid
>2</
nid
>
<
column1
>row2col1</
column1
>
<
column2
>AAAtxt</
column2
>
<
mval
>AAAval</
mval
>
</
record
>
// JavaScript Document
jQuery(document).ready(
function
() {
// grid
jQuery(
"#grid"
).kendoGrid({
dataSource: gridDataSource,
columns: [
{
field:
"column1"
,
title:
"Column 1"
,
width:
"300px"
},
{
field:
"column2"
,
title:
"Column 2"
,
editor: multiselect_editor,
width:
"300px"
},
{
command: [
{name:
"edit"
,text:{update:
"Edit"
,cancel:
"Cancel"
}},
],
width:
"10%"
}
],
toolbar: [{name:
"create"
,text:
"New"
}],
editable: {mode:
"popup"
},
sortable:
true
,
pageable:
true
,
resizable:
true
});
})
//grid datasource
var
gridDataSource =
new
kendo.data.DataSource({
type:
"xml"
,
transport: {
read:
function
(options) {
jQuery.ajax( {
url:
"data/griddata.asp"
,
type:
"POST"
,
cache:
false
,
success:
function
(result) { options.success(result); },
error:
function
(e) { alert(e.responseText); },
data: {
startrow: ((options.data.pageSize*(options.data.page-1))+1),
maxrows: 50
}
});
},
update:
function
(options) {
alert(
"updated"
);
},
create:
function
(options) {
alert(
"created"
);
}
},
schema: {
type:
"xml"
,
data:
"/root/resultset/record/"
,
model: {
id:
"nid"
,
fields: {
nid:
"nid/text()"
,
column1:
"column1/text()"
,
mval:
"mval/text()"
,
column2:
"column2/text()"
}
},
total:
"/root/resultset/@size"
},
error:
function
(e) {
alert(e.xhr.responseText);
},
serverFiltering:
true
,
serverPaging:
true
,
serverSorting:
true
,
pageSize: 50
})
// multiselect for popup editor
function
multiselect_editor (container, options) {
jQuery(
'<select multiple="multiple" id="multiselect_editor" data-text-field="textnode" data-value-field="valuenode" data-bind="value:mval"/>'
)
.appendTo(container)
.kendoMultiSelect ({
placeholder:
"Select..."
,
autoBind:
true
,
dataTextField:
"textnode"
,
dataValueField:
"valuenode"
,
dataSource: {
type:
"xml"
,
serverFiltering:
true
,
sort: { field:
"textnode"
, dir:
"asc"
},
transport: {
read: { type:
"POST"
, cache:
false
, url:
"data/multiselectdata.asp"
},
},
schema: {
type:
"xml"
,
data:
"/root/resultset/record"
,
model: {
fields: {
textnode:
"textnode/text()"
,
valuenode:
"valuenode/text()"
}
}
}
,error:
function
(e) {
alert(e.xhr.responseText);
}
}
});
}
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
root
>
<
resultset
date
=
"03/09/2013"
size
=
"3"
time
=
"10:13:50"
>
<
record
number
=
"1"
>
<
nid
>1</
nid
>
<
column1
>row1col1</
column1
>
<
column2
></
column2
>
<
mval
></
mval
>
</
record
>
<
record
number
=
"2"
>
<
nid
>2</
nid
>
<
column1
>row2col1</
column1
>
<
column2
>AAAtxt</
column2
>
<
mval
>AAAval</
mval
>
<!-- Works for multi select data binding (to set 1 selected item in the multiselect in the editor) -->
</
record
>
<
record
number
=
"3"
>
<
nid
>3</
nid
>
<
column1
>row3col1</
column1
>
<
column2
>BBBtxt,CCCtxt</
column2
>
<
mval
>BBBval,CCCval</
mval
>
<!-- Does not work for multiselect data binding (to set 2 selected items in the multiselect in the editor) -->
</
record
>
<
record
number
=
"4"
>
<
nid
>4</
nid
>
<
column1
>row4col1</
column1
>
<
column2
>BBBtxt,CCCtxt</
column2
>
<
mval
>BBBval</
mval
>
<!-- Does not work for multiselect data binding (to set 2 selected items in the multiselect in the editor) -->
<
mval
>CCCval</
mval
>
</
record
>
</
resultset
>
</
root
>
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
root
>
<
resultset
date
=
"03/09/2013"
size
=
"5"
time
=
"10:13:50"
>
<
record
number
=
"1"
>
<
nid
>1</
nid
>
<
valuenode
>AAAval</
valuenode
>
<
textnode
>AAAtxt</
textnode
>
</
record
>
<
record
number
=
"2"
>
<
nid
>2</
nid
>
<
valuenode
>BBBval</
valuenode
>
<
textnode
>BBBtxt</
textnode
>
</
record
>
<
record
number
=
"3"
>
<
nid
>3</
nid
>
<
valuenode
>CCCval</
valuenode
>
<
textnode
>CCCtxt</
textnode
>
</
record
>
<
record
number
=
"4"
>
<
nid
>4</
nid
>
<
valuenode
>DDDval</
valuenode
>
<
textnode
>DDDtxt</
textnode
>
</
record
>
</
resultset
>
</
root
>