我之前发布了一个关于动态生成剑道网格的代码的问题。
我现在遇到的当前问题,即使我像这样硬编码列数:
var numberOfRows = 2;
var numberOfColumns = 12;
var columnsPerRow = numberOfColumns/numberOfRows;
是我得到错误:
First of all, what does this mean?
columnsPerRow 的使用方式如下:
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++;
}
网格显示如下:
当我像这样隐藏列变量时:
/*var numberOfRows = 2;
var numberOfColumns = 12;
var columnsPerRow = numberOfColumns/numberOfRows;*/
输出看起来应该是:
但是空值用于列数,因此 for 循环不会循环。
除了网格不显示数据。
我已将我所有的 javascript 和 html 放在这个jsfiddle中。虽然它没有在小提琴中工作。可能有一些未使用的代码。我正在忙着删除它。
我附上了这些文件:
<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>
以及如何解决数据将显示在网格中的问题?
任何帮助将不胜感激,谢谢...