I'm trying to use kendo.widgetInstance() to get an instance of a kendo control:
$.each($('#AttributeForm').find(':input'), function(index, element) {
if ($(element).closest('.k-widget').length > 0) {
var widgetObject = kendo.widgetInstance($(element), kendo.ui);
if (typeof widgetObject != 'undefined') widgetObject.enable(false);
}
});
However, the kendo.widgetInstance() function is always throwing an error, TypeError: t is undefined.
This code is adapted from the following page:
http://docs.kendoui.com/getting-started/widgets#getting-reference-to-an-unknown-kendo-ui-widget
Using the 2013.2.918 version.
Is this the correct way to get an instance of a kendo widget? All I want to do is disable all the kendo widgets inside the form and there are several different types but I don't know how many or what type they are.
Updated to show the correct way to disable a kendo control and the final code that worked for me.
The documentation is incorrect, at least for this version of Kendo UI.
kendo.widgetInstance
requires a second parameter (the documentation currently states this parameter is optional). Depending on whether you use Web or Mobile, the necessary parameter iskendo.ui
orkendo.mobile.ui
. So you need to change your call to:See it work: http://jsfiddle.net/lhoeppner/798Rd/