Ich möchte ein berechnetes Feld zum Kendo Grid hinzufügen, das ich verwende. Hier ist ein Schnipsel meines Code:Kendo Grid Berechnete Variable
@{Html.Kendo().Grid<StatuteMaintenance.Data.Statute>()
.Name("mainGrid")
.Columns(c =>
{
c.Bound(e => e.Statute_Number);
c.Bound(e => e.Statute_Description);
c.Bound(e => e.Effective_Start_Date).Format("{0:MM/dd/yyyy}");
c.Bound(e => e.Expiration_Date).Format("{0:MM/dd/yyyy}");
c.Bound(e => e.VIO_Type);
c.Bound(e => e.Fine_Amount);
c.Template(e => { }).ClientTemplate("#=calculate(Exipration_Date)#");//should be handled in model.
if (Roles.IsUserInRole("NSP\\IT-Development All")) { c.Command(command => { command.Edit(); }); }
})
.Editable(editable => editable.Mode(GridEditMode.InLine))
.Sortable()
.Filterable()
.Pageable(p => p
.Refresh(true)
.PageSizes(true)
)
.DataSource(d => d
.Ajax()
.Model(m =>
{
m.Id(e => e.TreeID);
m.Field(e => e.Statute_Number).Editable(false);
m.Field(e => e.VIO_Type).Editable(true);
m.Field(e => e.Statute_Description).Editable(false);
m.Field(e => e.Effective_Start_Date).Editable(false);
m.Field(e => e.Expiration_Date).Editable(false);
//m.Field(e => e.CurrentlyEffective).Editable(false);
}
)
.Read(r => r.Action("VioTypeGridDataSource", "VIOType"))
.Update(r => r.Action("VioTypeGridUpdate", "VIOType"))
.Sort(s => s.Add(e => e.Statute_Number).Ascending())
)
.Render();
}
<script>
function calculate(s) {
console.log(s);
result = "";
if (s.Expiration_Date < DateTime.Now) {
result = "No"
}
else {
result = "Yes"
}
return result;
}
ich einen Laufzeitfehler erhalten, dass „s“ nicht definiert ist.
Gehe ich das richtig? Ich habe mir andere Beispiele angeschaut und keines hat eine "DateTime" in ihren Berechnungen.
erhielt ich immer noch den gleichen Fehler, diesmal "EXPIRATION_DATE ist nicht definiert". In anderen Beispielen habe ich gesehen, dass das ganze Gitter in einem Skript eingeschlossen ist. Ich habe mein Kendo-Gitter außerhalb eines Skripts ausgeführt, was mein Problem sein könnte. Ich suche immer noch nach einer Lösung. –
Bearbeiten Sie die Frage und fügen Sie die aktuelle Version des vollständigen Codes hier ein, ich werde versuchen, zu helfen, wenn Sie es schnell machen können. –
Ich habe den vollständigen Code –