I am using kendo dropdown like:
Html:
<input id="field_timezone" style="width: 275px;" tabindex="4">
JS:
resultList = $.parseJSON(response.d); //data via ajax call
$("#field_timezone").kendoDropDownList({
dataTextField: "TimeZoneDescription",
dataValueField: "TimeZoneID",
dataSource: resultList,
optionLabel: {
TimeZoneDescription: "Choose",
TimeZoneID: ""
}
});
I am trying to find, what value/text pairs for options should be displayed on the dropdown.
I have tried:
alert(JSON.stringify($('#field_timezone').data('kendoDropDownList').dataSource.data()));
Or
alert(JSON.stringify($('#field_timezone').data('kendoDropDownList').dataSource._data));
gives the list used for datasource, but it's missing the "Choose" option, and no option to find out which fields are been used for value or text.
And its right. DataSource isn't suposed to have the optionLabel
data, because it isn't data, actually. You can reach an option property with this:
$('#field_timezone').data('kendoDropDownList').options.optionLabel
To get the option label directly, try this:
var ddl = $('#field_timezone').data('kendoDropDownList');
var option = ddl.options.optionLabel[ddl.options.dataTextField];