When an item's name includes an underscore (_), its associated settings are not correctly applied or recognized by the component.
(optional)
The ismte settings are not considered when the item name is set with underscore
The items settings should be considered if the item name is set with underscore.
1695350
When the scrollable option is disabled, on resizing the browser window by making it more narrow, at certain point the columns stop resizing and the whole table goes out of the right border of the Grid. Reproducible with the SASS and LESS themes.
Dojo example: https://dojo.telerik.com/ItIrEzEY/3
The table goes out of wrapping element (.k-grid).
The columns resize and the table remains within the borders of the Grid.
I have a Kendo ComboBox() on CountryCode property that has [MaxLength(2)] data annotation on the property in the ViewModel. This is limiting the filtering on the ComboBox and I can't type more than 2 characters in the component. Please see the sample project for the reproduceable issue.
Upon inspecting the markup generated by the Kendo ComboBox(), I'm seeing that there are 2 inputs being generated and maxlength HTML attribute is applied to both.
When I manually removed the maxlength HTML attribute from the first input tag, this fixed the filtering of the ComboBox while still retaining the validation on the second input tag.
Please review the markup generated by the Kendo ComboBox() and see if it can be fixed to remove maxlength from the first input tag.
Expected behavior:
If [MaxLength] is applied to a property, it should generate a markup that allows the user to filter without character limitation while still validating against the selected data value.
### Bug report
When the Input() option of the Grid's pager is enabled, the page number buttons are displayed, too.
### Reproduction of the problem
1) Create a Grid and enable the Input() option of the pager.
2) The pager displays both the page number buttons and the page numeric input:
### Expected/desired behavior
When the numeric input is enabled, the page number buttons must not be displayed.
### Environment
* **Telerik UI for ASP.NET MVC version: 2025.2.702
Upgrade wizard fails with error:
An error occurred while running the wizard. Error executing custom action Telerik.KendoUI.Mvc.VSX.Actions.MultiProjectUpdateMasterPageAction: System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\chyejo\AppData\Roaming\Telerik\Updates\telerik.ui.for.aspnetmvc.hotfix.2023.3.1114.commercial\styles\kendo.common-font-icons'. at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileSystemEnumerableIterator`1.CommonInit() at System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost) at System.IO.Directory.GetFiles(String path, String searchPattern) at Telerik.VSX.Web.Actions.CommonStyleRetrievers.SpecificSkinRetriever.GetCommonStyleFilesRecursive(String name) at Telerik.VSX.Web.Actions.CommonStyleRetrievers.SpecificSkinRetriever.CheckSkinExists() at System.Linq.Enumerable.First[TSource](IEnumerable`1 source, Func`2 predicate) at Telerik.VSX.Web.Actions.CommonStyleRetrievers.KendoSkinRetriever.GetSkin() at Telerik.KendoUI.Mvc.VSX.Actions.UpdateMasterPageAction.GetSkin(String skinName) at Telerik.KendoUI.Mvc.VSX.Actions.AdvancedUpdateMasterPageAction.RetrieveMasterPageSettingsUpgradeInfo(IPropertyDataDictionary arguments, IProjectWrap project) at Telerik.KendoUI.Mvc.VSX.Actions.UpdateMasterPageAction.Execute(WizardContext wizardContext, IPropertyDataDictionary arguments, IProjectWrap projectWrap) at Telerik.VSX.Actions.MultiProjectActionBase`1.Execute(WizardContext wizardContext, IPropertyDataDictionary arguments) at Telerik.VSX.WizardEngine.ActionManager.ExecActions()
### Bug report
When the Form contains multiple Upload editros, which are required, the Form's validator validates only the first Upload editor.
### Reproduction of the problem
1) Create a Form with two Upload editors.
2) Make both Uploads required.
3) Submit the Form without uploaded files.
4) The validation for required triggers only for the first Upload editor.
A Dojo sample for reproduction: https://dojo.telerik.com/VJTiYYhE
### Expected/desired behavior
All Upload editors in the Form must be validated.
### Workaround
function onValidate(e) {
var uploadComponent = $("#StartingFile").data("kendoUpload"); // get a reference to the Upload editor
var form = e.sender;
var validator = form.validator;
if (uploadComponent.getFiles().length == 0) { // check the selected files for upload
validator.validateInput($("input[name='StartingFile']")); // trigger the "required" validation, if no files are selected for upload
}
}
### Environment
* **Kendo UI version: 2025.2.702
* **jQuery version: 3.7.1
* **Browser: [all]
Regression introduced in 2024.4.1112.
The gutter values are ignored:
$("#exampleform").kendoForm({
formData: {
FirstName: "John",
LastName: "Doe",
Email: "john.doe@email.com",
Country: "1",
City: "Strasbourg",
AddressLine: ""
},
layout: "grid",
grid: {
cols: 2,
**gutter: 50**
},
items: [
{
type: "group",
label: "Personal Information",
layout: "grid",
grid: { cols: 1, **gutter: 50** },
//...
The gutter values are applied to the Form.
Workaround:
Set the values through CSS:
<style>
/*columns gap */
.k-form .k-form-layout {
column-gap: 50px;
}
/*rows margin*/
.k-form-md .k-form-field, .k-form-md .k-form-buttons {
margin-top: 50px;
}
</style>
### Bug report
When filtering a specified Grid column, the filter expressions are inverted when the value of the first expression is empty/null.
### Reproduction of the problem
1) Filter a Grid column by leaving the first filter value empty:
2) Filter the Grid and open again the filter menu. The filter expressions are inverted:
A Dojo sample for reproduction: https://dojo.telerik.com/CXChcTJT
### Expected/desired behavior
The filter menu expressions must remain the same.
### Environment
* **Kendo UI version: 2025.2.702
* **jQuery version: 3.7.0
* **Browser: [all]
Describe the bug
Setting the Sortable "cursor" option results in inline styles being applied through the _setCursor function in kendo.all.min.js. This causes a CSP related js exception.
To reproduce
<ul id="sortable">
<li>ItemA1</li>
<li>ItemA2</li>
<li>ItemA3</li>
</ul>
<script>
$("#sortable").kendoSortable({
cursor: "move"
});
</script>
Expected behavior
No inline styles should be added, to ensure CSP compatibility.
Actual behavior
A js error related to inline styles is thrown.
Affected browsers (please remove the unneeded items)
Product Version
2024.4.1112
Dojo example: https://dojo.telerik.com/uGitesaF
When the DropDownList has an initial value, the floating label overlaps with the text.
The label should be displayed above the DropDownList.
Workaround: refresh the floating label in the dataBound event handler of the component:
e.sender.label.floatingLabel.refresh()
Clearing the value with the Signature "clear" button does not trigger the widget's change event.
Run the following Dojo example: https://dojo.telerik.com/KhlVWvam
The change event fires.
The change event does not fire.
**Kendo UI version: 2025.1.211
**Browser: [all]
When the kendo js references are rendered as module, the licensing banner and watermark appear, even when a valid license license key has been installed.
<link href="https://kendo.cdn.telerik.com/themes/10.2.0/default/default-ocean-blue.css" rel="stylesheet" type="text/css" />
<script src="https://code.jquery.com/jquery-3.7.1.min.js" type="module"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdf.js/4.8.69/pdf.mjs" type="module"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdf.js/4.8.69/pdf.worker.mjs" type="module"></script>
<script src="https://cdn.kendostatic.com/2025.1.211/js/kendo.all.min.js" type="module"></script>
<script src="https://cdn.kendostatic.com/2025.1.211/js/kendo.aspnetmvc.min.js" type="module"></script>
No banner and watermark appears.
A banner and a watermark appears.
Workaround: reference a js file containing your script key after the kendo js files:
<script src="~/Scripts/telerik-license.js" type="module"></script>
**Kendo UI version: 2025.1.211
**Browser: [all]
Bug report
When the Kendo UI Grid is configured to have endless scrolling and an item is updated on the first page, the scrollbar is reset. If an update is done on a page after the first one, the scroll is correctly persisted.
Reproduction of the problem
1. Set a grid with an endless scroll.
2. Scroll down (without entering the second page).
3. Update an item on the first page.
4. The scroll is reset.
Dojo sample for reference:
https://dojo.telerik.com/EcUKIrAK
Environment
* **Kendo UI version:** 2021.1.330
* **jQuery version:** 1.12.4
* **Browser:** [all]
In a state persistence scenario, the Grid state is not properly restored when the "all" pageSizes option is selected.
The Grid shows page 1 of the data and the currently selected page sizes option is shown (e.g., 20).
The Grid shows all the data and the pager dropdown shows "all" as the selected value.
I use the ASP.NET MVC widget code to add a ButtonGroup to a view. The ButtonGroup configuration has 2 buttons, has selection = many, and one of the buttons is selected.
@(Html.Kendo().ButtonGroup()
.Name("select-data-source-filters")
.HtmlAttributes(new { @class = "", @style = "text-align: center; flex-flow: row;"})
.Selection("multiple")
.Items(t =>
{
t.Add().Text("Include Default Product Scenarios").Selected(false).HtmlAttributes(new { @id = "databaseItems", @class= "mb-2 k-ml-2.5" });
t.Add().Text("Include User Defined Product Scenarios").Selected(true).HtmlAttributes(new { @id = "userDefinedItems", @class = "mb-2 ml-2" });
})
)
In an event handler for a different widget (e.g., Grid), I programmatically select the button that is not yet selected. This should cause both buttons to now be selected. However, the act of getting a reference to the button group widget object causes the selection property to be reset to "single". The workaround is to manually reset the selection option to "multiple".
let buttonGroupWidget = $("#select-data-source-filters").kendoButtonGroup().data("kendoButtonGroup");
if (debugLevel > 0) {
console.log(".... buttonGroupWidget = " + buttonGroupWidget + " : ", buttonGroupWidget);
console.log(".... (initial) buttonGroupWidget.selectedIndices = " + buttonGroupWidget.selectedIndices + " : ", buttonGroupWidget.selectedIndices);
}
if (buttonGroupWidget !== null && buttonGroupWidget !== undefined) {
buttonGroupWidget.options.selection = "multiple";//workaround for a bug in 2024Q3 that resets selection to single when get reference to the kendo widget
buttonGroupWidget.select(0);
buttonGroupWidget.trigger("select");
console.log(".... (updated) buttonGroupWidget.selectedIndices = " + buttonGroupWidget.selectedIndices + " : ", buttonGroupWidget.selectedIndices);
}
Currently, the tool name is not added into the HTML structure of the created Editor's tool:
Here is a Dojo example:
https://dojo.telerik.com/AvoNOKOr
Is it possible to include the specified "name" in the button's class, so the custom tools can be selected by class name for further customization?
<div id="grid"></div>
<script>
// The dataSource is initialized as a stand-alone widget that can be bound to the Grid.
var dataSource = new kendo.data.DataSource({
transport: {
read: {
// The remote endpoint from which the data is retrieved.
url: "https://demos.telerik.com/kendo-ui/service/products",
dataType: "jsonp"
}
},
pageSize: 10
});
$("#grid").kendoGrid({
// The dataSource configuration is set to an existing DataSource instance.
dataSource: dataSource,
pageable: true
});
</script>
The breakpoint is added at the last line (326079) of the file.
The breakpoint is added at the desired line (e.g., 3715).
### Bug report
When setting the NoDataTemplate() option to an empty string, the option is not serialized.
### Reproduction of the problem
1. Define an AutoComplete with NoDataTemplate("")
2. Search for a non-existing option and notice how the popup opens and displays the default "No data found" message. When initializing the AutoComplete with jQuery and the "noDataTemplate" is set to "", the popup does not open.
A REPL sample for reproduction: https://netcorerepl.telerik.com/cfkPEClS50FUVU5z00
### Expected/desired behavior
When the NoDataTemplate("") is set and there are no results, the popup must not open. The NoDataTemplate option must work equally when using either the AutoComplete HtmlHelper or Kendo UI for jQuery AutoComplete.
### Environment
* **Telerik UI for ASP.NET MVC version: 2024.4.1112
* **Browser: [all]
The SaveButton() method does not render the Cancel Command button in Grid's Toolbar Template
@(Html.Kendo().Grid<GridModel>()
...
.Name("grid")
.ToolBar(t =>
{
t.Template(@<text>
<span class="group-buttons">
@item.SaveButton();
</span>
</text>);
})
)
The SaveButton() method does not render the Cancel Command in Grid's Toolbar Template.
The SaveButton() method should render the Cancel Command in Grid's Toolbar Template.
A possible way to circumvent this behavior would be to explicitly declare both the Save and Cancel buttons as independent Button components via the Toolbar.ClientTemplate() API configuration.
@(Html.Kendo().Grid<GridModel>()
...
.Name("grid")
.ToolBar(t =>
{
t.ClientTemplate(Html.Kendo().Template()
.AddHtml(@<text>
<span class="group-buttons">
</text>)
.AddComponent(saveBtn => saveBtn
.Button()
.Name("saveBtn")
.Icon("check")
.HtmlAttributes(new { @class = "k-grid-save-changes", style="margin-right: 2%;" })
.Content("Save Changes")
)
.AddComponent(cancelBtn => cancelBtn
.Button()
.Icon("cancel")
.Name("cancelBtn")
.HtmlAttributes(new { @class = "k-grid-cancel-changes" })
.Content("Cancel Changes")
)
.AddHtml("</span>")
);
})
)
Inline Editor removes Toolbar items when it is set as resizable.
true
.The Inline Editor's Toolbar items are removed each time the ToolBar window is re-rendered.
The Inline Editor's Toolbar items should not be removed each time the ToolBar window is re-rendered.