Completed
Last Updated: 21 May 2019 10:49 by ADMIN
Ken
Created on: 29 Jun 2013 02:23
Category: Menu
Type: Feature Request
98
populate a menu from a DataSource
It would be great to be able to simply connect the menu widget to a DataSource to populate. It will allow for a data driven menu, instead of having to handle that logic on the client side.
15 comments
ADMIN
Carl
Posted on: 21 May 2019 10:48
Hey everyone!

The ability to data bind to the Kendo UI Menu via the DataSource is now available as of the R2 2019 release. Check out both the local data binding and remote data binding demos to get more information around how to take advantage of this new feature!

Regards,
Carl
Progress Telerik
Joshua
Posted on: 06 Jul 2018 02:09
does this still not work?!!!!!
Greg Henry
Posted on: 13 Sep 2017 16:39
2 years since last Kendo Team view ... 
Greg Henry
Posted on: 13 Sep 2017 16:37
Also we need a way to 
- refresh part or totality of the menu .. 
- dynamically load submenu (evntualy each time it is accessed , source may change ...) 
Ron
Posted on: 13 Sep 2017 13:31
It would help us greatly in a new Enterprise project we are working on. 
Lee
Posted on: 11 Sep 2017 21:00
We need this bad!
Steve
Posted on: 11 Sep 2017 20:51
Bump +1
ADMIN
Telerik Admin
Posted on: 18 Feb 2017 09:25
Really waiting for this one.
Eric
Posted on: 25 Jan 2017 14:18
This would be a great feature. IMO, it doesn't have to support all the DataSource features. It can be read-only, or when there is any change to the related model element it completely rebinds.
Todd
Posted on: 27 Mar 2015 16:39
The menu control although very cool is a "real" pain to work with unless it is static data. Since it has a property called datasource why does it not behave like a bound datasource should behave. So casting my vote here also.

Thanks!  
Todd
ADMIN
Telerik Admin
Posted on: 27 Feb 2015 16:49
This suggestion is yet to be pondered for future versions of the widget.
Imported User
Posted on: 20 Feb 2015 11:59
Still nothing?
Basem
Posted on: 10 Jun 2014 16:01
We always need dynamic menus when dealing with CMS's and application integrations. We've been stuck with the RadMenu...
Will
Posted on: 30 May 2014 13:13
I think what you are asking for is already there.  I am doing exactly that.

$(function () {
    var siteMenuDS,
    siteMenuServiceBaseUrl = "/SiteMenu",
    $siteMenu = $("#siteMenu"), siteMenu,
    $siteMenu2 = $("#siteMenu2"), siteMenu2;

    siteMenuDS = new kendo.data.DataSource({
        serverFiltering: false,
        transport: {
            read: function (options) {
                $.ajax({
                    url: siteMenuServiceBaseUrl + "/SiteMenu",
                    contentType: 'application/json; charset=utf-8',
                    dataType: "json",
                    type: "POST",
                    data: null,
                    success: function (result) {
                        options.success(result);
                        siteMenu = $siteMenu.kendoMenu({
                            dataSource: result,
                            orientation: "horizontal"
                        }).data("kendoMenu");


                        siteMenu2 = $siteMenu2.kendoMenu({
                            dataSource: result,
                            orientation: "vertical"
                        }).data("kendoMenu");

                    },
                    error: function (result) {
                        options.error(result); // Call the DataSource's "error" method with the results
                        notification.show({
                            title: "ERROR:",
                            message: result.statusText
                        }, "error");
                    }
                });
            }
        }
    });


    siteMenuDS.fetch();
});
Imported User
Posted on: 17 Dec 2013 20:58
This is sorely needed.  Our application needs to build the menu using an ajax call to a webApi service.  We need to be able to define a datasource that retrieves the json data for the menu like we do for other Kendo controls.

I have been able to do this in another way, but it is not very elegant.  Please....