我正在使用 Kendo UI Grid 为比赛创建记分牌。My DataSource 从数据库中接收团队名称及其相关排名的列表。因此,每个 JSON 对象都包含一个团队名称和该团队的排名。排名是简单的整数。
为了举例,假设有四支球队,他们各自的排名是1、2、3和3。换句话说,两支球队并列第三。以下是我对 Kendo UI Grid 的要求:
- 呈现的平局排名应在排名前有一个“T”。我写了一些Javascript来完成这个:http: //jsfiddle.net/mwassmer/4FXdc/
- 网格中的排名列应该是可排序的。因此,我假设网格列的“字段”属性必须引用数据源中的原始排名列,而不是标记与“T”关系的排名的“演示”版本。
我假设我需要使用列模板来合并我的 Javascript“关系”代码,但我不确定如何去做。我之前成功使用过列模板,但不是这样。
下面是一些用于为平局添加“T”指标的演示 Javascript 代码。假设网格列模板是要走的路,我对如何将此代码合并到我的模板中感到困惑。
$(function () {
var ranks = [1,2,3,3];
var counts = {};
for(var i = 0; i< ranks.length; i++) {
var num = ranks[i];
counts[num] = counts[num] ? counts[num]+1 : 1;
}
$.each(ranks, function(index, value) {
if (counts[value] == 1)
{
$("#ranksTies").append("<li>" + value + "</li>");
}
else
{
$("#ranksTies").append("<li>T" + value + "</li>");
}
});
});