Kendo Grid从Excel复制到子网格的问题

时间:2019-03-18 23:43:01

标签: kendo-ui inline copy-paste subgrid

您好, 希望您一切都好 我从excel到subgrid的剑道网格副本存在问题 我有必须将数据从Excel粘贴到子网格的情况。 我已经看过Telerik提供的一些示例,但都是非常基本的示例,取而代之的是,我不得不面对一个更复杂的场景,即单元格编辑涉及复杂的编辑器的多选。

  $("#thirdGrid_1").on('focusin', function (e) {
         // get the grid position
        var offset = $(this).offset();
        // crete a textarea element which will act as a clipboard
        var textarea = $("<textarea>");
        // position the textarea on top of the grid and make it transparent
        textarea.css({
            position: 'absolute',
            opacity: 0,
            top: offset.top,
            left: offset.left,
            border: 'none',
            width: $(this).width(),
            height: $(this).height()
        })
            .appendTo('body')
            .on('paste', function () {
                // handle the paste event
                setTimeout(function () {
                    // the the pasted content
                    var value = $.trim(textarea.val());
                    // get instance to the grid
                    var grid = $("#thirdGrid_1").data("kendoGrid");
                    // get the pasted rows - split the text by new line
                    var rows = value.split('\n');
                    var data = [];
                    for (var i = 0; i < rows.length; i++) {
                        var cells = rows[i].split('\t');
                        data.push({
                            January: cells[0],
                            February: cells[1],
                            March: cells[2],
                            April: cells[3],
                            May: cells[4],
                            June: cells[5],
                            July: cells[6],
                            August: cells[7],
                            September: cells[8],
                            October: cells[9],
                            November: cells[10],
                            December: cells[11]

                        });
                    };
                    grid.dataSource.data(data);
                });
            }).on('focusout', function () {
                // remove the textarea when it loses focus
                $(this).remove();
            });
        // focus the textarea
        setTimeout(function () {
            textarea.focus();
        });
    });

我尝试了以下代码。 粘贴效果很好。但是当我粘贴网格时,我的网格从div以及从window溢出了。粘贴后,我的以下数据意外隐藏了。而且我无法保存该数据。 请帮助我摆脱这个问题。 任何或所有帮助将不胜感激。

0 个答案:

没有答案