Javascript—给出错误的动态行数

Javascript—给出错误的动态行数,javascript,grid,kendo-ui,calculated-columns,Javascript,Grid,Kendo Ui,Calculated Columns,我以前曾将有关此代码的问题发布到 我现在遇到的问题是,即使我硬编码列数,如下所示: var numberOfRows = 2; var numberOfColumns = 12; var columnsPerRow = numberOfColumns/numberOfRows; /*var numberOfRows = 2; var numberOfColumns = 12; var columnsPerRow = numberOfColumns/numberOfRows;*/ 就是我得到了

我以前曾将有关此代码的问题发布到

我现在遇到的问题是,即使我硬编码列数,如下所示:

var numberOfRows = 2;
var numberOfColumns = 12;
var columnsPerRow = numberOfColumns/numberOfRows;
/*var numberOfRows = 2;
var numberOfColumns = 12;
var columnsPerRow = numberOfColumns/numberOfRows;*/
就是我得到了错误:

First of all, what does this mean?

列箭头的用法如下:

var columnDefs = [];
counter = 0;

var arrayData = [];
for( var x = 0; x < result.length-1; x=x+Math.floor(columnsPerRow)+1 )
{
    var tempArr = new Array();

    for( var y = 0; y < columnsPerRow; y++ )
    {
        var num = x + y;
        tempArr.push(result[num]);
    }
    arrayData.push(tempArr);
}
var dataTitles = [];
for( var x = 0; x < titleArray.length; x++ )
{
    var head = "";
    head = titleArray[x];
    head = head.replace(/ /g,"");
    dataTitles.push(head);
}

var counter = 0;
var columnDefs = [];
for (var i = 0; i < columnsPerRow.length; i++) 
{
    if (counter == (columnsPerRow - 1)) 
    {
        counter = 0;
    }
    columnDefs.push({ field: dataTitles[counter], template: result[i].value });
    counter++;
}
输出看起来与预期的一样:

但是,空值用于列数,因此for循环不循环

但网格不显示数据

我把我所有的javascript和html都放在了这里。虽然它在小提琴上不起作用。 可能有一些未使用的代码。我一边走一边忙着把它取下来

我已附上这些文件:

<link href='assets/css/kendo.custom.css' rel='stylesheet' type='text/css' />
<link href='assets/css/kendo.common.min.css' rel='stylesheet'/>
<link href='assets/css/kendo.default.min.css' rel='stylesheet' type='text/css' />
<script src='assets/js/jquery.min.js'></script>
<script src='assets/js/kendo.all.min.js'></script>

如何解决数据将显示在网格中的问题


感谢您的帮助……

我发现我的问题出在这个for循环中:

for (var i = 0; i < columnsPerRow.length; i++) 
{
    if (counter == (columnsPerRow - 1)) 
    {
        counter = 0;
    }
    columnDefs.push({ field: dataTitles[counter], template: result[i].values });
    counter++;
}
应该是

columnDefs.push({ field: dataTitles[counter], template: result[i]

如上所述,需要添加
tableTitle
,这是一个存储标题的数组。

在您提供的小提琴中,没有提供导致错误的
tableTitle
数组。。。我已经用一些
tablettitle
测试数组更新了fiddle,它似乎可以工作(除了样式,但我想这是因为我没有
kendo.custom.css
样式表):.Thank@SamuelCaillerie,尽管我发现这不是唯一的问题。由于我试图简化编码所做的所有更改,我忘记了在下面发布的文章中做一些细微的更改。
i < columnsPerRow
columnDefs.push({ field: dataTitles[counter], template: result[i].values
columnDefs.push({ field: dataTitles[counter], template: result[i]