Cut/Copy/Paste buttons stop working after fromJSON is called on a kendoSpreadsheet.
Instead, a JavaScript error occurs: "Error: Unable to get property 'clipboard' of undefined or null reference"
This is due to spreadsheet._workbook._view being undefined. It appears that this happens when fromJSON is called, as it is defined prior to that call.
This can be replicated in the example for the fromJSON function. Note that the Cut/Copy/Paste buttons are non-functional:
https://dojo.telerik.com/uQAQUxEB
Is there a solution to this issue?
Thanks
Hi,
I am opening a window on clicking a button but at the same time i want the background to be inactive/blur/hidden, such that user should not be able to click anywhere but the window.
for ex: -(attached a picture in attachment)
<script>
function putOnHoldPopup(requestId) {
debugger;
$("#window").html(' <textarea id="txtArea" style="margin: 0px; height: 95px; width: 517px;resize:none;" watermark-text="Enter your comments here......"></textarea ><button>Save</button>');
var myWindow = $("#window");
myWindow.kendoWindow({
width: "600px",
height: "300px",
title: "Provide a valid reason to put the request on hold",
visible: false,
actions: [
"Minimize",
"Close"
],
}).data("kendoWindow").center().open();
$("#example").css("overflow", "hidden");
}
</script>
here i am trying to hide the background but it is not happening.Any other way to hide the background.Please help.
Thanks
Manish Tiwari
I dont see any forum like Angularjs so I am posting here.
My Problem is we are using Angular v1.5 and migrating jquery from 1.x to Jquery 3.1.1 and Kendo UI from 2015 to 2018 R2. After migrating dropdowns are not at all loading, autocomplete is not working properly and some style issues.
Can any one help me to get rid of the situation.And let me know if this is the correct thread for posting the question, if not please suggest.
Thanks in Advance.
When text part of a node is clicked, emdedded Treeview events triggered once for each node. They don't work on following clicks, but nodes are visually seen checked/unchecked.
How can it be overcome? Or is it possible to disable clicking on text part?

I'm trying to add a little margin between stacked notifications to visually better separate individual notifications, however, I can't get the css right.
All demo's of stacked notifications has zero margin.
Do you have any suggestions?
I have a kendo ui multiselect setup using the code method. It populates fine and I can select values. However if I leave the field blank then run a kendo custom kendoValidator the select field never gets to the custom validation. It's like a blank is being marked as valid. Which means it never even makes it to the custom rules.Is there a setting i need when i create the control to tell it that blanks are not OK?
@(Html.Kendo().MultiSelect()
.Name("JobSelected")
.HtmlAttributes(new { @required = "required", @validationMessage = "Enter Job", @class = "form-control job" })
.DataTextField("Text")
.DataValueField("Value")
.Placeholder("Select Jobs...")
.DataSource(source =>
{
source.Read(read =>
{
read.Action("JobsGetAll", "Application");
}).ServerFiltering(true);}).AutoBind(true))
//input is never the multiselect box
var validator = $("#personalDiv").kendoValidator({
rules: {
//implement your custom date validation
custom: function (input) {
if (input.is(".drp")) {
var ms = input.data("kendoDropDownList");
if (ms.value() == "-1") {
input.parent().addClass("k-invalid");
return false;
}
else {
input.parent().removeClass("k-invalid");
return true;
}
}
else if(input.is(".job"))
{
var ms = input.data("kendoMultiSelect");
if (ms.value().length === 0) {
input.parent().addClass("k-invalid");
return false;
}
else {
input.parent().removeClass("k-invalid");
return true;
}
}
else if(input.is(".date") && input.val() != "") {
var currentDate = Date.parse($(input).val());
//Check if Date parse is successful
if (!currentDate) {
return false;
}
//grad date needs to be in the future
if (input.is("#txtGradDate") || input.is("#txtStartDate")) {
var d = new Date();
if (currentDate < d) {
return false;
}
}
}
else if (input.is("[data-role=maskedtextbox]") && input.val() != "") {
var maskedtextbox = input.data("kendoMaskedTextBox");
return maskedtextbox.value().indexOf(maskedtextbox.options.promptChar) === -1;
}
return true;
}
}
}).data("kendoValidator");
if (!validator.validate()) {
$("#personalDiv").removeClass("valid").addClass("invalid");
$('#btnPreviousPage').show();
$('#btnNextPage').show();
break;
} else {
$("#personalDiv").removeClass("invalid").addClass("valid");
}

The tabstrip expands to fit content to a point then stops. And if you put a splitter inside it doesn't expand at all and instead scrollbars appear.
I have a large grid in a tab and I want the tabstrip to fit to the grid size which is taller than the window. How can I do that? Can it be done with split content too?

I have a tab strip where the content of each tab contains a grid. When a user performs an action I need to refresh the grid on the selected tab as well as the grids in the tabs that are not selected. The problem that I have is that the grid in one of the tabs has columns that are frozen. When this tab is not selected and the grid is refreshed, the locked columns do not get displayed. All of the other grids in the tabs that are not selected get displayed correctly.
Link to dojo: https://dojo.telerik.com/@jedvalson/asexEDOv with instructions to reproduce the issue

I have used code from this example - https://docs.telerik.com/kendo-ui/controls/scheduling/scheduler/how-to/AngularJS/editing-using-contextmenu - to create a context menu.
Occasionally the menu will close immediately after it is displayed, so all you see is a flash of the menu. This has only happened on Chrome on Windows 10.
It only happens very occasionally, I cannot recreate it at will.
Pressing F5 does not fix it. Only restarting Chrome seems to fix the issue.
See attached video which shows menu 'flashing' for a moment,
I need to be able to use a DropDownlist as a filter row control with the ability to select multiple options.
I set the cell filter template to the below function (ComboBoxInit) and I found the multibox extended plugin in another forum thread (bottom).
When I run this, it gives me an error message within kendo.all.min.js
JavaScript runtime error: Unable to get property 'done' of undefined or null reference
Any help would be appreciated. I have tried everything. I can get a regular dropdownlist to work, but we need the ability to select multiple options. The MultiSelect box is not an option as it's way too bulky for our needs.
function ComboBoxInit(args)
{
var data = [ { text: "Tony", value: "110" }, { text: "Gary", value: "120" }];
args.element.kendoMultiSelectBox({
valuePrimitive: true,
dataTextField: "text",
dataValueField: "value",
dataSource: data
});
}
var MultiSelectBox = window.kendo.ui.DropDownList.extend({
init: function (element, options) {
var me = this;
// setup template to include a checkbox
options.template = kendo.template(
kendo.format('<label><input type="checkbox" name="{0}" value="#= {1} #" /> #= {2} #</label>',
element.id + "_option_" + options.dataValueField,
options.dataValueField,
options.dataTextField
)
);
// remove option label from options, b/c DDL will create an item for it
if (options.optionLabel !== undefined && options.optionLabel !== null && options.optionLabel !== "") {
me.optionLabel = options.optionLabel;
options.optionLabel = undefined;
}
// create drop down UI
window.kendo.ui.DropDownList.fn.init.call(me, element, options);
// setup change trigger when popup closes
me.popup.bind('close', function () {
var values = me.ul.find(":checked")
.map(function () { return this.value; }).toArray();
// check for array inequality
if (values < me.selectedIndexes || values > me.selectedIndexes) {
me._setText();
me._setValues();
me.trigger('change', {});
}
});
me._setText();
},
options: {
name: "MultiSelectBox"
},
optionLabel: "",
selectedIndexes: [],
_accessor: function (vals, idx) { // for view model changes
var me = this;
if (vals === undefined) {
return me.selectedIndexes;
}
},
value: function (vals) {
var me = this;
if (vals === undefined) { // for view model changes
return me._accessor();
} else { // for loading from view model
var checkboxes = me.ul.find("input[type='checkbox']");
if (vals.length > 0) {
// convert to array of strings
var valArray = vals
.map(function (item) { return item + ''; });
checkboxes.each(function () {
this.checked = $.inArray(this.value, valArray) !== -1;
});
me._setText();
me._setValues();
}
}
},
_select: function (li) { }, // kills highlighting behavior
_blur: function () { }, // kills popup-close-on-click behavior
_setText: function () { // set text based on selections
var me = this;
var text = me.ul.find(":checked")
.map(function () { return $(this).parent().text(); })
.toArray();
if (text.length === 0)
me.text(me.optionLabel);
else
me.text(text.join(', '));
},
_setValues: function () { // set selectedIndexes based on selection
var me = this;
var values = me.ul.find(":checked")
.map(function () { return this.value; })
.toArray();
me.selectedIndexes = values;
me.element.val(values);
}
});
window.kendo.ui.plugin(MultiSelectBox);