New to Telerik UI for ASP.NET AJAX? Start a free 30-day trial
How to Paste data-only in the RadSpreadsheet
This help article shows how to paste data-only into the RadSpreadsheet, removing all styles from the source data.
Occasionally, it is desirable to only paste the raw data into the RadSpreadsheet. If substancial amounts of data are being copied and pasted into the RadSpreadsheet, parsing and rendering the content could take a long time. Removing the styling will both reduce the volumn of data pasted, and speed up the rendering. See Figure 1 for an example of pasting data-only.
Figure 1: A RadSpreadsheet with styled source data pasted using data-only.
JavaScript
kendo.spreadsheet.Clipboard.prototype.paste = function () {
var sheet = this.workbook.activeSheet();
var pasteRef = this.pasteRef();
var content = this._content;
content.data = stripData(content.data);
sheet.range(pasteRef).setState(content, this);
sheet.triggerChange({ recalc: true, ref: pasteRef });
}
function stripData(source) {
var data = Array.isArray(source) ? [] : {};
for (var key in source) {
if (source.hasOwnProperty(key)) {
var t = typeof source[key];
if (key === "value") {
data[key] = source["value"];
} else if (source[key] === null) {
data[key] = null;
} else {
data[key] = t === 'object' ? stripData(source[key]) : null;
}
}
}
return data;
}
For this code to work, at least version R1 2017 SP1 (2017.1.228) is required.