Rendern von Daten im Header des Kendo Scheduler-Steuerelements - dateHeaderTemplate

Ich verwende die Scheduler-Steuerung von Kendo. Ich versuche, die tägliche Kapazität (jetzt 30% fest programmiert) in der Kopfzeile eines jeden Tages darzustellen, wie im folgenden Bildschirm dargestellt. Wie kann ich fest codierte Daten durch Daten aus einer Datenquelle ersetzen?

Hier ist der Code, den ich verwendet habe. Ich habe im folgenden Code 30% HARD CODED.

<!DOCTYPE html>
<html>
<head>
<style>html { font-size: 12px; font-family: Arial, Helvetica, sans-serif; }</style>
<title></title>
<link rel="stylesheet" href="http://cdn.kendostatic.com/2015.1.429/styles/kendo.common-material.min.css" />
<link rel="stylesheet" href="http://cdn.kendostatic.com/2015.1.429/styles/kendo.material.min.css" />
<link rel="stylesheet" href="http://cdn.kendostatic.com/2015.1.429/styles/kendo.dataviz.min.css" />
<link rel="stylesheet" href="http://cdn.kendostatic.com/2015.1.429/styles/kendo.dataviz.material.min.css" />
<link rel="stylesheet" href="http://cdn.kendostatic.com/2015.1.429/styles/kendo.default.mobile.min.css" />

<script src="Scripts/jquery.min.js"></script>
<script src="Scripts/kendo.web.min.js"></script>
<script>
    $(function () {
        $('#scheduler').kendoScheduler({
            date: new Date("2013/09/02"),
            dateHeaderTemplate: kendo.template("<u>#=kendo.toString(date, 'dd/M')#</u> - (30%)"),               
        });
    });
</script>
</head>
<body>
    <div id="scheduler"></div>
/body>

Now, ich werde 'Prozentsatz' von API erhalten und möchte auf Datenquelle setzen, und von Datenquelle möchte ich es in Header rendern

aktueller Code für die Datenquelleneinstellung von JavaScript

var datasource = new kendo.data.SchedulerDataSource({
      data:Model.recordCollection // setting data
});
scheduler.setDataSource(datasource);

Diese Datenquelle ist jedoch kalenderbezogen. Sie enthält nicht die tägliche Kapazität. Wie kann ich die täglichen Kapazitätsdaten aus verschiedenen Datenquellen festlegen?

Als Antwort bearbeite ich die Frage

var actualDC = ["30", "20", "10", "50", "70", "60", "40"]; // Fest codierte tägliche Kapazität, aber es reicht nur für 7 Tage. Ich habe möglicherweise Daten für das ganze Jahr. und Array möglicherweise nicht richtig.

sample data from server:

var mydatafromApi = ({
    date:01/01/2013, 
    percentage=30%
  },
  {
    date:02/01/2013, 
    percentage=40%
  });

Aktuelle Frage 2

Now API-Datenquelle hat das folgende Farbattribut

var mydatafromApi = ({
    date:01/01/2013, 
    percentage=30%,
    color = red
  },
  {
    date:02/01/2013, 
    percentage=40%
    color = blue
  });

Ich möchte, dass diese FARBE als Hintergrund für die Scheduler-Zelle verwendet wird.

Ich habe versucht, wie unten

erst definierte Farben

          var actualColor = ["red", "blue","green", "yellow","blue", "red", "yellow"]; // hard coded daily color

  function scheduler_dataBound(e) {
      $.each($(".k-scheduler-header .k-scheduler-table th span.k-nav-day"),function(index, val) {
        var text = $(this).text();
        var newtext = text.replace("{dc}", actualDC[index]);
        $(this).text(newtext);
        $(this).backgroundcolor(actualColor[index]);
      });
    }

Aktuelle Frage 3 Ich erhalte während des Debuggens für "dateofHeader" einen niedrigeren Wert.

Das Header-Skript lautet wie folgt

 dateHeaderTemplate =  kendo.template("<span class='k-nav-day' data-dt='kendo.toString(date, 'dd/MM/yyyy')'><u>#=kendo.toString(date, 'dd/M')#</u> - ({dc}%)</span>")

Dann habe ich versucht, & quot, was mir folgendes gab- "" kendo.toString (Datum, 'TT / MM / JJJJ') ""

Antworten auf die Frage(2)

Ihre Antwort auf die Frage