Telerik Forums
UI for ASP.NET MVC Forum
1 answer
10 views

Hi,

My job is using the ANDI Accessibility Tool to test for accessibility and Section 508 compliance.

The tool keeps telling me that the, "Grid Element has no accessible name."  I have tried all of the suggestions listed in your online Grid Accessibility document.  However, I'm still getting the same message.

I also used the ANDI tool on your accessibility grid example and I received the same message.

Can someone assist me with this issue?

ANDI is a free Chrome Extension: https://chromewebstore.google.com/detail/unofficial-andi/fehcidpnbiemiekbbgligjlgjbhjchon.

I am including the results from my application and from your online demo grid.

Thanks,

Trena

Anton Mironov
Telerik team
 answered on 12 Sep 2025
0 answers
5 views
Hi Team,

I am using kendo date picker for in custom editor template for a kendo grid for pop up editing which is bind to datetime field of the model, now while displaying the value in the kendo date picker in custom editor template the value is displayed according to the user/client machine time zone which is changing the date value when the user is in some other time zone other than EST as application server is in EST , how to resolve the display issue in the kendo date picker for??
I am using the below code in custom editor template.
Please guide how to resolve this?


<div class="editor-field">
        @(Html.Kendo().DatePickeFor(m=>m.EndDate)
            .Format("MM/dd/yyyy")
            .Value(Model.EndDate)
           )
        @Html.ValidationMessageFor(m => m.EndDate)
</div>
Chandan
Top achievements
Rank 1
 asked on 10 Sep 2025
1 answer
19 views
hi, I am trying to populate Kendo MVC Grid filter with remote api data but getting js error. Could you help on fixing it? Please find the code snippets and js error below

C# Grid:
@(Html.Kendo().Grid<AggregateModel>()
... .columns.Bound(e => e.AccountType) .Title("Account Type").Width(100) .Filterable(f => f.Multi(true).Search(true).DataSource(ds => ds .Read(read => read.Type(HttpVerbs.Get).Url("api/AccountTypeFilters") .Data("{ field: 'AccountType' }"))));

API Response (api/AcountTypeFilters) : with Text and Value fields
{
    "$id": "1",
    "AccountType": [
        {
            "$id": "2",
            "Disabled": false,
            "Group": null,
            "Selected": false,
            "Text": "Client",
            "Value": "0"
        },
        {
            "$id": "3",
            "Disabled": false,
            "Group": null,
            "Selected": false,
            "Text": "House",
            "Value": "1"
        }
    ]
}

js error:
Uncaught TypeError: n.slice is not a function
    at init.success (kendoscripts.min.js?v=2-0-289-1:1:101049)
    at success (kendoscripts.min.js?v=2-0-289-1:1:100001)
    at i.success (kendoscripts.min.js?v=2-0-289-1:1:88721)
    at v (headerscripts.min.js?v=2-0-289-1:14:35030)
    at Object.fireWith [as resolveWith] (headerscripts.min.js?v=2-0-289-1:14:35775)
    at b (headerscripts.min.js?v=2-0-289-1:14:74792)
    at XMLHttpRequest.<anonymous> (headerscripts.min.js?v=2-0-289-1:14:79897)
    at XMLHttpRequest.wrapFn (webcomponents.js?v=2-0-289-1:2996:35)
    at _ZoneDelegate.invokeTask (webcomponents.js?v=2-0-289-1:2626:171)
    at ZoneImpl.runTask (webcomponents.js?v=2-0-289-1:2425:37)

Kendo.Mvc, Version=2022.1.412.0
Kendo UI js v2018.3.911
Mihaela
Telerik team
 answered on 04 Sep 2025
1 answer
11 views

We have this Command:

columns.Command(c =>
{
    c.Custom("Delete").Text(" ").Click("onClick").IconClass("k-icon k-i-trash").HtmlAttributes(new { @title = Resource.DELETE });
})

And we have this function to set the grid state:

function loadOptions() {
    var options = sessionStorage["userTable-options"];
    
    if (options) {
        var grid = $('#userTable').data('kendoGrid');
        var toolBar = $("#userTable .k-grid-toolbar").html();  // https://stackoverflow.com/questions/27717575/kendo-mvc-persist-and-load-grid-buttons

        var optionsJSON = JSON.parse(options);

        // https://docs.telerik.com/kendo-ui/knowledge-base/grid-persist-customized-filter
        var StatusTranslated = optionsJSON.columns.filter(function (c) { return c.field === "StatusTranslated.Text"; })[0];

        StatusTranslated.filterable = {
            ui: $.proxy(filterDropDownField, { field: 'StatusTranslated' })
        };

        grid.setOptions(optionsJSON);
        $("#userTable .k-grid-toolbar").html(toolBar);
        $("#userTable .k-grid-toolbar").addClass("k-grid-top");
    }
}

 

Before setting the grid state the button executes successfully. After executing setOptions the button does not work anymore.

How do we combine the possibility to save/load the grid state, and the usage of custom buttons in the grid?

 

Kind regards.

 

Stefan
Top achievements
Rank 2
Iron
Iron
Iron
 answered on 28 Aug 2025
1 answer
16 views

How can I influence the drop down filters so that both start with the operator 'Contains' and the logic between them as 'or'. 

They should be able to change them after initial setting. i would like it to look like the enclosed image to start.

Eyup
Telerik team
 answered on 27 Aug 2025
0 answers
20 views

Hi,

I’m using the Kendo UI Grid with column menu filters. My requirement:

  • Let the user pick a filter operator (e.g., contains, equals).

  • Don’t apply a filter if the value is empty.

  • Keep the operator visible every time the 3-dot menu opens, even after sorting.

What I’ve tried:

  1. columnMenuInit → Works first time, but doesn’t fire again for the same column.

  2. Popup open inside columnMenuInit → Fires once, but after sorting the grid, it doesn’t trigger again.

  3. Delegated jQuery click handler → Works reliably, but feels like a hack.

Minimal repro (MVC wrapper):

@(Html.Kendo().Grid<MyModel>() .Name("Invoices") .Columns(c => { c.Bound(x => x.InvoiceNumber); c.Bound(x => x.CustomerName); }) .Sortable() .Filterable(f => f.Extra(false)) .ColumnMenu(m => m.Filterable(true)) .Events(e => e.ColumnMenuInit("onColumnMenuInit")) ) <script> function onColumnMenuInit(e) { var popup = e.container.data("kendoPopup"); if (popup) { popup.bind("open", function () { var ddl = e.container.find("select[title='Operator']").data("kendoDropDownList"); if (ddl) ddl.value("contains"); // operator only, no value e.container.find("input[type=text]").val(""); }); } } </script>

Issue:

  • The operator shows correctly the first time.

  • After sorting and reopening the menu, the operator reset logic does not run.

Questions:

  • Is there an official event I can use to run logic every time the column menu opens?

  • What’s the recommended way to restore operator state when no filter value is applied?

Thanks!

Isis
Top achievements
Rank 1
 asked on 20 Aug 2025
1 answer
16 views

How can I fix this, surely they are meant to be side by side, Ideally I would like to change the is true to labels also?

 

Eyup
Telerik team
 answered on 12 Aug 2025
1 answer
22 views

Hi,

I'm using ASP.NET MVC  with Kendo UI v. 2024.2.514 and I'm running into a weird issue when exporting a grid to PDF.

When I trigger the export, the PDF output shows only the current page of the grid duplicated X number of times.

For example, if I'm on page 2 of a 10-page grid, instead of exporting all ten pages, the PDF contains page 2 repeated 10 times.

I'm enabling the PDF export like this:

.ToolBar(tools => tools.Pdf())
.Pdf(pdf => pdf.AllPages())

Has anyone run into this issue or have any suggestions on what I'm missing here?

Thanks!

Mihaela
Telerik team
 answered on 07 Aug 2025
1 answer
39 views

Hi,

I am using Web app with mvc. We are using Deferred Script File to remediate CSP (content security policy). 

For that reason instead of Client Template i am using Client Template Handler for one of the column which is a dropdownlist.

Whenever Grid is loaded with data, I can see the selected dropdown values in the grid but when i try to update the dropdown value

its opening as a text box and showing value as [object object].

 

  columns.Bound(p => p.Studendetails).ClientTemplateHandler("getname") 

function getname(data) {
     return data.Studendetails ? data.Studendetails.Name : '';
 }

 

Mihaela
Telerik team
 answered on 05 Aug 2025
1 answer
21 views

Hello there,
i have a project with MVC Asp.Net, Kendo v. "2024.4.1112.462" and would like to
- load data into grid, the data is returned by MVC Controller
- the spinner with the "loading data in progress" should never appear
- so the user can "play" on the grid header filters while loading data is ongoing 
- when the user clicks on "apply" on grid header filter, the previous request must be canceled to run the new request with latest filters applied, in this way the c#  CancellationToken is Canceled on server side.

Can you tell me how to "cancel" the actual http request from the kendo grid (client) and execute the new one, as described in the last point?

thanks in advance

Anton Mironov
Telerik team
 answered on 30 Jul 2025
Narrow your results
Selected tags
Tags
+? more
Top users last month
Jay
Top achievements
Rank 3
Bronze
Iron
Iron
yw
Top achievements
Rank 2
Iron
Iron
Stefan
Top achievements
Rank 2
Iron
Iron
Iron
Kao Hung
Top achievements
Rank 1
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Jay
Top achievements
Rank 3
Bronze
Iron
Iron
yw
Top achievements
Rank 2
Iron
Iron
Stefan
Top achievements
Rank 2
Iron
Iron
Iron
Kao Hung
Top achievements
Rank 1
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?