Hello everyone,
Here are the highlights of the new online resources we published this week from 10 Nov 2025 to 17 Nov 2025:
Article: https://www.telerik.com/kendo-jquery-ui/documentation/ai-components
Summary: Integrate Kendo UI for jQuery AI components—AI Prompt and AI Chat—with LLM providers (OpenAI, Azure OpenAI, custom endpoints) through a backend proxy. The article explains configuration and event handling (prompt templates, system messages, streaming responses, conversation history, request/response/error events) and covers API key security to implement AI chat and prompt workflows in your app.
Article: https://www.telerik.com/kendo-jquery-ui/documentation/knowledge-base/kendo-ui-clear-icon-span
Summary: This article explains how Kendo UI for jQuery renders the clear (x) icon as a span inside input widgets and how to reliably target it. You will learn how to enable or disable the clear button and use CSS/JavaScript to hide, style, or reposition the generated icon span to avoid overlap or alignment issues in TextBox, ComboBox, DropDownList, and DatePicker widgets.
Article: https://www.telerik.com/kendo-jquery-ui/documentation/controls/sortable/accessibility/overview
Summary: This article outlines the accessibility behavior of the Kendo UI for jQuery Sortable, covering WCAG 2.2/Section 508 targets, WAI-ARIA semantics, focus management, and screen reader considerations. It clarifies keyboard interaction and known limitations of drag-and-drop, and guides you on structuring markup and configuration to achieve an accessible sorting experience.
Article: https://www.telerik.com/kendo-jquery-ui/documentation/controls/dropdowntree/binding/load-on-demand
Summary: Configure the Kendo UI for jQuery DropDownTree to load child nodes on demand (lazy loading) from a remote endpoint when a node is expanded. Set loadOnDemand: true and bind a HierarchicalDataSource with transport.read, schema.model.id, and schema.model.hasChildren; pass the expanded node’s id to the server so it returns only that node’s children, reducing the initial payload for large hierarchies.
Article: https://www.telerik.com/kendo-jquery-ui/documentation/controls/sortable/accessibility/keyboard-navigation
Summary: This article documents keyboard navigation and accessibility for the Kendo UI for jQuery Sortable, showing how you focus the component, move between items, initiate reordering via keyboard, reposition items, drop, and cancel. It specifies the supported keyboard shortcuts plus the ARIA roles/attributes and focus management used to meet WCAG requirements and support screen readers, so you can implement and test accessible item reordering.
Article: https://www.telerik.com/kendo-jquery-ui/documentation/knowledge-base/fixing-bar-visibility-chart-long-labels
Summary: When long category axis labels in a Kendo UI for jQuery Bar/Column Chart consume too much space, the plot area can collapse and bars may appear hidden. Fix this by using categoryAxis.labels.visual to render wrapped or truncated labels within a fixed width and adjusting axis padding/margins, so the chart reserves bounded space for labels. The article includes sample code to measure text and draw multi-line labels, preserving bar visibility and label readability.
Article: https://www.telerik.com/kendo-jquery-ui/documentation/knowledge-base/stop-event-propagation-buttons-panelbar-header-contenturl
Summary: Learn how to prevent Kendo UI for jQuery PanelBar headers from expanding/selecting when clicking buttons placed in the header while using contentUrl. The article shows binding delegated handlers and calling e.preventDefault() and e.stopPropagation() on button click (and mousedown/touchstart if needed) so the event doesn’t bubble to the header anchor (.k-link), keeping header controls interactive without triggering PanelBar actions.
Article: https://www.telerik.com/kendo-jquery-ui/documentation/knowledge-base/preventing-auto-increment-dragging-kendo-ui-jquery-spreadsheet
Summary: Learn how to prevent auto-increment when dragging the fill handle in the Kendo UI for jQuery Spreadsheet by forcing drag-fill to copy the original value instead of creating a numeric/date series. You’ll intercept the Spreadsheet change event to detect drag-fill and programmatically reset the target range, with an option to hide the fill handle via CSS if you need to disable drag filling entirely.
Feel free to check them out and share your thoughts!
The Telerik Team
---------------------------------------------------------------------------------------------------------------------------------------------------------
Hello everyone,
Here are the highlights of the new online resources we published this week from 05 Nov 2025 to 10 Nov 2025:
Article: https://www.telerik.com/kendo-jquery-ui/documentation/knowledge-base/customize-star-colors-kendo-ui-jquery-rating
Summary: The Kendo UI jQuery Rating does not expose a color option, so you customize star colors via CSS. Override the widget’s selectors for unselected, selected, and hover states to set your desired colors. The article shows the exact classes to target (e.g., .k-rating-item, .k-selected, .k-hover, .k-icon/.k-svg-icon) with sample rules.
Feel free to check them out and share your thoughts!
The Telerik Team
---------------------------------------------------------------------------------------------------------------------------------------------------------
Hello everyone,
Here are the highlights of the new online resources we published this week from 29 Oct 2025 to 05 Nov 2025:
Article: https://www.telerik.com/kendo-jquery-ui/documentation/knowledge-base/custom-check-all-checkbox-kendo-jquery-dropdowntree
Summary: Learn how to add a custom “Check all” checkbox to a Kendo UI for jQuery DropDownTree and wire it to select or clear all nodes. The article shows rendering the control when the popup opens, accessing the internal TreeView to programmatically toggle the checked state for all items, and syncing the header checkbox (checked/indeterminate) by handling the widget’s check/change events.
Feel free to check them out and share your thoughts!
The Telerik Team
We are using KendoUI library for jquery. We upgraded from 2021 to 2025.2.520 version.
After upgrading we are facing issue with multiselect dropdown. Control having change events, after selecting any new value or removing existing values- on-closing of list items popup we are triggering "SelectionChanged" event, so it's taking more time to close the popup and disabling all other controls click event. After closing the popup , we are able to click on other controls.
How to overcome this issue?
I have a local array of between 2 and 2000+ strings that I would like to virtualize. For some reason, when I add the valueMapper to the virtual function when there are only 4 items in the array, it causes the user to not be able to click on anything.
Here is a dojo showing what I tried. You can click on a letter and nothing will happen.
https://dojo.telerik.com/oojEQyxf
I have a kendo grid and I want the user to be able to reorder the columns but I have the following rules:
1. Only the unlocked columns can be moved.
2. I don't want them to be able to move them to the locked side of the grid.
3. I don't want the columns on the locked side of the grid to have the drag cursor or tooltip since they should not be reorderable.
How would I achieve this?
Here is what I tried and it doesn't really work because:
1. Assuming there are 4 locked columns (columnsBaseLength = 4), moving column 6 to position 5 throws it on the locked side making 5 locked columns rather than making it the first unlocked column.
2. I still see the tooltip when dragging the locked columns around.
// Note: order is defined when initializing the grid. It is set to the index of the column.
// Note: columnsBaseLength is set to 4 since I have 4 locked columns.
columnReorder: function (e) {
let grid = this;
let columnToMove = e.column;
let newIndex = e.newIndex;
let oldIndex = e.oldIndex;
// Determine if the new index is within the locked column area// This requires knowing the number of currently locked columns
let isMovingIntoLockedArea = newIndex < columnsBaseLength;
let isLockedColumn = columnToMove.order < columnsBaseLength;
if (isLockedColumn || isMovingIntoLockedArea) {
console.warn("Locked columns cannot be reordered. Cannot move to a locked column");
setTimeout(function () {
grid.reorderColumn(oldIndex, columnToMove);
}, 1);
} else {
setTimeout(function () {
$.each(grid.columns, function (index, column) {
column.order = index;
});
}, 1);
}
},
Hi,
I am using Kendo Grid of 2025.3.825 version, I have observed that when I do sorting on a column,its highlighting with some color then I removed the sorting but still column was heightening with same color its has to come normal color like other columns.
Can you please help to solve this.
Hi everyone.
I'm driving an interface via JavaScript for testing.
Something like this:
Open a modal:
$( "body" ).find( "button[data-bind='click:open']" ).click();
Write a value in an input field:
ele.val( "myValue" ).trigger( "change" );
Switch a tab:
$( ".nav-tabs a[href='#tab1']" ).tab( "show" );
But I can't activate "kendoAutoComplete".
With this statement:
$("#myKendoAutoComplete").val( "schu" ).trigger( "keydown" );
I can write to the input, the remote call is made, but the list of items in the suggestion doesn't appear.
Any ideas?
Thanks.
I’m using the kendo UI and need to track all changes made by the user. The scenarios include:
Is there a single common event or the best approach to handle all these cases?
I’ve checked the change event, but it doesn’t seem to fire for all scenarios (e.g., backspace or image removal). Should I use keyup, paste, or a combination of events? Or is there a recommended way to detect any DOM/content change in the editor?
Any guidance or best practices would be appreciated.
I'm getting a WAVE Error on the Kendo Dropdownlist Filter input. Is there any way to correct this?
The error says:
A form control does not have a corresponding label.
This is the code being flagged:
<div class="k-list-filter"><span class="k-searchbox k-input k-input-md k-rounded-md k-input-solid" type="text" autocomplete="off"><span class="k-icon k-font-icon k-i-search k-input-icon"></span>
We’re experiencing a rendering issue with the Kendo UI TreeView component on iOS devices (both iPhone and iPad). The problem occurs regardless of which browser is used — we’ve tested Safari, Chrome, and others, and the issue persists across all of them.
We’re currently using Kendo UI version 2021.2.616.
You can see attached screenshots.
Has anyone else encountered this problem or found a workaround/fix for TreeView rendering issues on iOS?
Used code:
@* tree view *@
<div class="col-md-3 col-lg-3">
<div class="card border-primary treeview-container">
<div class="card-header bg-secondary">
<h5>Patient Events</h5>
<div class="card-actions">
<button class="btn btn-outline-primary"
id="btn-expand-treeview">
<i class="fas fa-chevron-down fa-fw"></i> Expand
</button>
<button class="btn btn-outline-primary"
id="btn-collapse-treeview"
style="display: none">
<i class="fas fa-chevron-up fa-fw"></i> Collapse
</button>
<button id="btn-new-event" class="btn btn-primary">
<i class="fas fa-plus fa-fw"></i> New
</button>
</div>
</div>
<div class="card-body">
<div id="events-treeview" class="mb-1"></div>
</div>
</div>
</div>
JS:
function bindEventsTreeView() {
$eventsTreeView
.kendoTreeView({
template: treeViewChildItemTemplate,
dataSource: [],
loadOnDemand: false,
select: onEventSelect,
expand: function (e) {
const treeView = $eventsTreeView.data('kendoTreeView');
var item = treeView.dataItem(e.node);
item.expanded = true;
treeView.setDataSource(treeView.dataSource);
e.preventDefault();
},
collapse: function (e) {
const treeView = $eventsTreeView.data('kendoTreeView');
var item = treeView.dataItem(e.node);
item.expanded = false;
treeView.setDataSource(treeView.dataSource);
e.preventDefault();
}
});
}
template:
<script id="treeview-child-item-template" type="text/kendo-ui-template">
# if (!item.items) { #
<h4>
<span class="badge badge-light">
<span # if (item.archived) { # style="color: crimson;" # } #>
#: item.eye #
</span>
</span>
</h4>
# } #
<span class="ml-2"><i class="#: item.spriteCssClass #"></i> #: item.text #</span>
</script>
let data = [
{
itemId: 1,
itemName: "Apples",
itemColor: "Red"
},
{
itemId: 2,
itemName: "Grapes",
itemColor: "Green"
}
];I have a kendo grid with a local JSON dataSource (Not connected to a server). When a user fills out a form in a modal, I need to then either add, delete, or update the related record in the local kendo grid. What would be the easiest way to do each of these operations so that I don't see the dirty record indicator on the screen?
