Skip to content

Commit 09ce83c

Browse files
author
Kendo Bot
committed
Sync with Kendo UI Professional
1 parent a3da653 commit 09ce83c

File tree

7 files changed

+326
-28
lines changed

7 files changed

+326
-28
lines changed

docs/controls/data-management/grid/pdf-export.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ position: 9
88

99
# PDF Export
1010

11-
As of the [Kendo UI Q3 2014 (2014.3.1119) release](http://www.telerik.com/support/whats-new/kendo-ui/release-history/q3-2014), the Grid widget provides a built-in PDF export functionality.
11+
As of the [Kendo UI Q3 2014 (2014.3.1119) release](https://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-q3-2014), the Grid widget provides a built-in PDF export functionality.
1212

1313
## Setup
1414

docs/intro/installation/prerequisites.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,14 @@ The following table provides a list of the jQuery versions that are compatible w
3131
| [Kendo UI 2017.2.504 (R2 2017)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-r2-2017) |1.12.3| Also compatible with 1.10.x, 2.2.x and 3.1.1|
3232
| [Kendo UI 2017.1.118 (R1 2017)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-r1-2017) |1.12.3| Also compatible with 1.10.x, 2.2.x and 3.1.1|
3333
| [Kendo UI 2016.3.1118 (R3 2016 SP2)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-r3-2016-sp2) |1.12.3| Also compatible with 1.10.x, 2.2.x and 3.1.1|
34-
| [Kendo UI 2016.3.914 (R3 2016)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-r3-2016) |1.12.3| Also compatible with 1.10.x and 2.2.x|
35-
| [Kendo UI 2016.2.504 (R2 2016)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-q2-2016) |1.12.3| Also compatible with 1.10.x and 2.2.x|
36-
| [Kendo UI 2016.1.112 (Q1 2016)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-q1-2016) |1.9.1| Also compatible with 1.10.x and 2.1.x|
37-
| [Kendo UI 2015.3.930 (Q3 2015)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/q3-2015) |1.9.1| Also compatible with 1.10.x and 2.1.x|
38-
| [Kendo UI 2015.2.624 (Q2 2015)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/q2-2015) |1.9.1| Also compatible with 1.10.x and 2.1.x|
39-
| [Kendo UI 2015.1.318 (Q1 2015)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/q1-2015) |1.9.1| Also compatible with 1.10.x and 2.1.x|
40-
| [Kendo UI 2014.3.1119 (Q3 2014)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/q3-2014) |1.9.1| Also compatible with 1.10.x and 2.1.x|
41-
| [Kendo UI 2014.2.716 (Q2 2014)](http://www.telerik.com/support/whats-new/kendo-ui/release-history/q2-2014) |1.9.1| Also compatible with 1.10.x and 2.1.x|
34+
| [Kendo UI 2016.3.914 (R3 2016)](https://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-r3-2016) |1.12.3| Also compatible with 1.10.x and 2.2.x|
35+
| [Kendo UI 2016.2.504 (R2 2016)](https://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-q2-2016) |1.12.3| Also compatible with 1.10.x and 2.2.x|
36+
| [Kendo UI 2016.1.112 (Q1 2016)](https://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-q1-2016) |1.9.1| Also compatible with 1.10.x and 2.1.x|
37+
| [Kendo UI 2015.3.930 (Q3 2015)](https://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-q3-2015) |1.9.1| Also compatible with 1.10.x and 2.1.x|
38+
| [Kendo UI 2015.2.624 (Q2 2015)](https://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-q2-2015) |1.9.1| Also compatible with 1.10.x and 2.1.x|
39+
| [Kendo UI 2015.1.318 (Q1 2015)](https://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-q1-2015) |1.9.1| Also compatible with 1.10.x and 2.1.x|
40+
| [Kendo UI 2014.3.1119 (Q3 2014)](https://www.telerik.com/support/whats-new/kendo-ui/release-history/kendo-ui-q3-2014) |1.9.1| Also compatible with 1.10.x and 2.1.x|
41+
| [Kendo UI 2014.2.716 (Q2 2014)](https://www.telerik.com/support/whats-new/kendo-ui/release-history/q2-2014-kendouicomplete-2014-2-716) |1.9.1| Also compatible with 1.10.x and 2.1.x|
4242
| [Kendo UI 2014.1.318 (Q1 2014)]({%slug breakingchanges2014_kendoui%}#kendo-ui-2014-q1) |1.9.1| Also compatible with 1.10.x and 2.0.x|
4343
| [Kendo UI 2013.3.1119 (Q3 2013)]({%slug breakingchanges2014_kendoui%}#kendo-ui-2014-q3) |1.9.1| Also compatible with 1.10.x and 2.0.x|
4444
| [Kendo UI 2013.2.716 (Q2 2013)]({% slug breakingchanges2013_kendoui%}#kendo-ui-2013-q2) |1.9.1| - |
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
---
2+
title: Expanding Inner Grouped Rows
3+
description: An example on how to expand the inner grouped rows
4+
type: how-to
5+
page_title: How to Expand the Inner Grouped Rows of the Grid
6+
slug: grid-expanding-inner-grouped-rows
7+
position:
8+
tags: filter, grid, group, expand
9+
ticketid: 1145080
10+
res_type: kb
11+
---
12+
13+
## Environment
14+
<table>
15+
<tr>
16+
<td>Product Version</td>
17+
<td>2017.3 913</td>
18+
</tr>
19+
<tr>
20+
<td>Product</td>
21+
<td>Grid for Progress® Kendo UI®</td>
22+
</tr>
23+
</table>
24+
25+
26+
## Description
27+
28+
I have a grid that is grouped by site and then room number.
29+
I would like to have the grid open up with all the rows collapsed. This I am able to do. What I need help in is when I manually expand a row, I would like to automatically expand any rows within that group as well.
30+
31+
## Solution
32+
33+
In this scenario, we can suggest to programmatically [expand](https://docs.telerik.com/kendo-ui/api/javascript/ui/grid#methods-expandGroup) all items of the parent grouping field on the [groupExpand](https://docs.telerik.com/kendo-ui/api/javascript/ui/grid#events-groupExpand) event:
34+
35+
I made an example demonstrating this. Manually collapse all subgroups and then the main group after that notice how the subgroups are programmatically expanded once the main group is expanded:
36+
37+
````html
38+
<div id="example">
39+
<div id="grid"></div>
40+
<script>
41+
$(document).ready(function() {
42+
$("#grid").kendoGrid({
43+
dataSource: {
44+
type: "odata",
45+
transport: {
46+
read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
47+
},
48+
schema:{
49+
model: {
50+
fields: {
51+
UnitsInStock: { type: "number" },
52+
ProductName: { type: "string" },
53+
UnitPrice: { type: "number" },
54+
UnitsOnOrder: { type: "number" },
55+
UnitsInStock: { type: "number" }
56+
}
57+
}
58+
},
59+
pageSize: 7,
60+
group: [{
61+
field: "UnitsInStock"
62+
},
63+
{
64+
field: "UnitPrice"
65+
}],
66+
67+
aggregate: [ { field: "ProductName", aggregate: "count" },
68+
{ field: "UnitPrice", aggregate: "sum" },
69+
{ field: "UnitsOnOrder", aggregate: "average" },
70+
{ field: "UnitsInStock", aggregate: "min" },
71+
{ field: "UnitsInStock", aggregate: "max" }]
72+
},
73+
sortable: true,
74+
scrollable: false,
75+
groupable:true,
76+
pageable: true,
77+
groupExpand: function(e) {
78+
for (let i = 0; i < e.group.items.length; i++){
79+
var expanded = e.group.items[i].value
80+
e.sender.expandGroup(".k-grouping-row:contains("+expanded+")");
81+
}
82+
},
83+
columns: [
84+
{ field: "ProductName", title: "Product Name"},
85+
{ field: "UnitPrice", title: "Unit Price"},
86+
{ field: "UnitsOnOrder", title: "Units On Order" },
87+
{ field: "UnitsInStock", title: "Units In Stock"}
88+
]
89+
});
90+
});
91+
</script>
92+
</div>
93+
````
94+
Lines changed: 203 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,203 @@
1+
---
2+
title: Filter Column With DropDownList
3+
description: An example on how to filter column with complex objects
4+
type: how-to
5+
page_title: Filter Column With Complex Objects
6+
slug: grid-filter-column-with-dropdownlist
7+
position:
8+
tags: grid, filter, dropdownlist
9+
ticketid: 1144229
10+
res_type: kb
11+
---
12+
13+
## Environment
14+
<table>
15+
<tr>
16+
<td>Product Version</td>
17+
<td>2017.3 1026</td>
18+
</tr>
19+
<tr>
20+
<td>Product</td>
21+
<td>Grid for Progress® Kendo UI®</td>
22+
</tr>
23+
</table>
24+
25+
26+
## Description
27+
28+
How to filter a column with a DropDown editor when it is bound to a complex object?
29+
30+
## Solution
31+
32+
This could be achieved by programmatically applying the filters on the [filter](https://docs.telerik.com/kendo-ui/api/javascript/ui/grid/events/filter) event of the Grid. It will also require to programmatically clear the filters for that column when the clear button is clicked.
33+
34+
Please check the following example demonstrating this:
35+
36+
````html
37+
<script src="https://demos.telerik.com/kendo-ui/content/shared/js/products.js"></script>
38+
<div id="example">
39+
<div id="grid"></div>
40+
41+
<script>
42+
43+
$(document).ready(function () {
44+
var dataSource = new kendo.data.DataSource({
45+
pageSize: 20,
46+
data: products,
47+
autoSync: true,
48+
schema: {
49+
model: {
50+
id: "ProductID",
51+
fields: {
52+
ProductID: { editable: false, nullable: true },
53+
ProductName: { validation: { required: true } },
54+
Category: { defaultValue: { CategoryID: 1, CategoryName: "Beverages"} },
55+
UnitPrice: { type: "number", validation: { required: true, min: 1} }
56+
}
57+
}
58+
}
59+
});
60+
61+
$("#grid").kendoGrid({
62+
dataSource: dataSource,
63+
filterMenuInit:function(e){
64+
if(e.field === "Category"){
65+
$(e.container).find('[type="reset"]').click(function(event){
66+
var filters = e.sender.dataSource.filter().filters
67+
for (let i = 0; i <= filters.length; i++){
68+
if (filters[i].field == "Category.CategoryName"){
69+
filters.splice(i, 1);
70+
e.sender.dataSource.filter(filters)
71+
}
72+
}
73+
})
74+
}
75+
},
76+
pageable: true,
77+
filterable:true,
78+
filter:function(e){
79+
if(e.field == "Category" && e.filter !== null){
80+
var currentFilter = []
81+
var filtersCount = e.filter.filters[0].length
82+
var value = e.filter.filters[0].value
83+
if(e.sender.dataSource.filter() !== undefined){
84+
currentFilter = e.sender.dataSource.filter().filters // Retain the other filters
85+
}
86+
currentFilter.push({field:"Category.CategoryName", operatot:"eq", value:value})
87+
e.preventDefault()
88+
e.sender.dataSource.filter(currentFilter)
89+
}
90+
},
91+
height: 550,
92+
toolbar: ["create"],
93+
columns: [
94+
{ field:"ProductName",title:"Product Name" },
95+
{ field: "Category", title: "Category", width: "180px", editor: categoryDropDownEditor, template: "#=Category.CategoryName#" },
96+
{ field: "UnitPrice", title:"Unit Price", format: "{0:c}", width: "130px" },
97+
{ command: "destroy", title: " ", width: "150px" }],
98+
editable: true
99+
});
100+
});
101+
102+
function categoryDropDownEditor(container, options) {
103+
$('<input required name="' + options.field + '"/>')
104+
.appendTo(container)
105+
.kendoDropDownList({
106+
autoBind: false,
107+
dataTextField: "CategoryName",
108+
dataValueField: "CategoryID",
109+
dataSource: {
110+
type: "odata",
111+
transport: {
112+
read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Categories"
113+
}
114+
}
115+
});
116+
}
117+
118+
</script>
119+
</div> <script src="../content/shared/js/products.js"></script>
120+
<div id="example">
121+
<div id="grid"></div>
122+
123+
<script>
124+
125+
$(document).ready(function () {
126+
var dataSource = new kendo.data.DataSource({
127+
pageSize: 20,
128+
data: products,
129+
autoSync: true,
130+
schema: {
131+
model: {
132+
id: "ProductID",
133+
fields: {
134+
ProductID: { editable: false, nullable: true },
135+
ProductName: { validation: { required: true } },
136+
Category: { defaultValue: { CategoryID: 1, CategoryName: "Beverages"} },
137+
UnitPrice: { type: "number", validation: { required: true, min: 1} }
138+
}
139+
}
140+
}
141+
});
142+
143+
$("#grid").kendoGrid({
144+
dataSource: dataSource,
145+
filterMenuInit:function(e){
146+
if(e.field === "Category"){
147+
$(e.container).find('[type="reset"]').click(function(event){
148+
var filters = e.sender.dataSource.filter().filters
149+
for (let i = 0; i <= filters.length; i++){
150+
if (filters[i].field == "Category.CategoryName"){
151+
filters.splice(i, 1);
152+
e.sender.dataSource.filter(filters)
153+
}
154+
}
155+
})
156+
}
157+
},
158+
pageable: true,
159+
filterable:true,
160+
filter:function(e){
161+
if(e.field == "Category" && e.filter !== null){
162+
var currentFilter = []
163+
var filtersCount = e.filter.filters[0].length
164+
var value = e.filter.filters[0].value
165+
if(e.sender.dataSource.filter() !== undefined){
166+
currentFilter = e.sender.dataSource.filter().filters // Retain the other filters
167+
}
168+
currentFilter.push({field:"Category.CategoryName", operatot:"eq", value:value})
169+
e.preventDefault()
170+
e.sender.dataSource.filter(currentFilter)
171+
}
172+
},
173+
height: 550,
174+
toolbar: ["create"],
175+
columns: [
176+
{ field:"ProductName",title:"Product Name" },
177+
{ field: "Category", title: "Category", width: "180px", editor: categoryDropDownEditor, template: "#=Category.CategoryName#" },
178+
{ field: "UnitPrice", title:"Unit Price", format: "{0:c}", width: "130px" },
179+
{ command: "destroy", title: " ", width: "150px" }],
180+
editable: true
181+
});
182+
});
183+
184+
function categoryDropDownEditor(container, options) {
185+
$('<input required name="' + options.field + '"/>')
186+
.appendTo(container)
187+
.kendoDropDownList({
188+
autoBind: false,
189+
dataTextField: "CategoryName",
190+
dataValueField: "CategoryID",
191+
dataSource: {
192+
type: "odata",
193+
transport: {
194+
read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Categories"
195+
}
196+
}
197+
});
198+
}
199+
200+
</script>
201+
</div>
202+
````
203+

docs/knowledge-base/grid_filter_icon_to_left.md renamed to docs/knowledge-base/grid-filter-icon-to-left.md

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Moving Kendo UI Grid Filter Icon To Left
33
description: Displaying filter icon at most left position in the Grid header
44
type: how-to
55
page_title: How To Display Filter Icon Before the Title in the Grid Header
6-
slug: grid_filter_icon_to_left
6+
slug: grid-filter-icon-to-left
77
position:
88
tags: Grid, Filter icon, Left position
99
res_type: kb
@@ -30,7 +30,7 @@ Due to the way that the filter icon is positioned in the header, it receives the
3030

3131
<style>
3232
.k-grid-header .k-grid-filter, .k-grid-header .k-header-column-menu{
33-
margin-left: -1.3em!important;
33+
margin-left: -5px!important;
3434
margin-right: 0!important;
3535
3636
}
@@ -42,18 +42,19 @@ Due to the way that the filter icon is positioned in the header, it receives the
4242

4343

4444
#### Example
45+
````html
46+
<base href="https://demos.telerik.com/kendo-ui/grid/local-data-binding">
47+
<style>
48+
.k-grid-header .k-grid-filter, .k-grid-header .k-header-column-menu{
49+
margin-left: -5px!important;
50+
margin-right: 0!important;
4551
46-
<style>
47-
.k-grid-header .k-grid-filter, .k-grid-header .k-header-column-menu{
48-
margin-left: -1.3em!important;
49-
margin-right: 0!important;
50-
51-
}
52-
53-
.k-grid-header .k-grid-filter, .k-grid-header .k-header-column-menu{
54-
float: left!important;
55-
}
56-
</style>
52+
}
53+
54+
.k-grid-header .k-grid-filter, .k-grid-header .k-header-column-menu{
55+
float: left!important;
56+
}
57+
</style>
5758

5859
<script src="../content/shared/js/people.js"></script>
5960
<div id="example">
@@ -136,4 +137,4 @@ Due to the way that the filter icon is positioned in the header, it receives the
136137
137138
</script>
138139
</div>
139-
140+
````

0 commit comments

Comments
 (0)