As far as I can tell binding is not an option with DateRangePicker. Instead I believe you have to handle the change event and update your model from there. However for the life of me I can't work out how to do this. This is what I currently have:
@Html.HiddenFor(model => model.EarliestDeliveryDate)@Html.HiddenFor(model => model.LatestDeliveryDate)@(Html.Kendo().DateRangePicker() .Name("deliveryDate") .Range(r => r.Start(Model.EarliestDeliveryDate).End(Model.LatestDeliveryDate)) .Messages(m => m.StartLabel("Earliest").EndLabel("Latest")) .Events(events => events.Change("onDeliveryDatesChange")))<script type="text/javascript"> function onDeliveryDatesChange() { var range = this.range(); if (range.start && range.end) { var earliest = $('#EarliestDeliveryDate'); var latest = $('#LatestDeliveryDate'); earliest.val(range.start); latest.val(range.end); } }</script>
The values are getting updated on the hidden fields but this is not getting reflected on the model. I think this is because the format of the dates that are returned in range.start/end is wrong. It could also be something completely different. Can you please give me an example of how to do this and I'd suggest also updating your documentation with the example too.
Also if Name is not set then rendering utterly fails and no good message is given. This is not intuitive as other controls don't seem to need this value setting.

When editing a form with data, when I click the control to "EDIT" my saved date range selection it's opening on Todays date instead of my date range selection.
Any idea how to resolve this?

I have a form Razor in .NET Core that I have attached a Kendo Validator to. When I submit the form validator.validate() is returning false but none of the inputs on the form are displaying a validation error. How can I tell what validations are failing when validator.validate() returns false?
Razor Form
<form id="editQuestionsForm" method="post"> <input asp-for="Input.InspectionQuestionId" type="hidden" /> <div class="row"> <div class="col-md-12"> <div class="form-group"> <label asp-for="Input.InspectionSectionId"></label><br /> <kendo-combobox name="inspectionSection" style="width: 500px;" for="Input.InspectionSectionId" placeholder="Select Section" datatextfield="Text" datavaluefield="Value" bind-to="Model.InspectionSections"> <popup-animation> <open duration="500" /> <close duration="500" /> </popup-animation> </kendo-combobox><br /> <span asp-validation-for="Input.InspectionSectionId" class="text-danger"></span> </div> </div> </div> <div class="row"> <div class="col-md-12"> <div class="form-group"> <label asp-for="Input.QuestionTextForForm"></label><br /> <textarea asp-for="Input.QuestionTextForForm" class="form-control-textarea"></textarea><br /> <span asp-validation-for="Input.QuestionTextForForm" class="text-danger"></span> </div> </div> </div></form>
JavaScript
var validator = $("#editQuestionsForm").kendoValidator().data("kendoValidator");function validateSave() { if (validator.validate()) { $('#editQuestionsForm').submit(); } else { bootstrapWarningsMessage("There was an error submitting the form."); } return true;}
(It's a trial version)
Impossible to display data.
Data are correctly supplied in my form (see DOM capture)
But there is an error : L’objet ne gère pas la propriété ou la méthode « kendoGrid »
JS are the same than in examples.
I have a window in my _Layout.cshtml which I have initially set to visible="false". When I load or refresh the main page, I get a flickering, such that you can momentarily see the window text and button. I'm using a tag helper if that makes any difference.
The following is the _Layout.cshml file. The rest of the solution is just the standard Telerik ASP.Net Core template using ASP.Net Core 2019.2.514 controls on .Net Core 2.2.
<!DOCTYPE html><html><head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>@ViewData["Title"] - WindowFlickerTest</title> <link href="https://kendo.cdn.telerik.com/2019.2.514/styles/kendo.bootstrap-v4.min.css" rel="stylesheet" type="text/css" /> <script src="https://kendo.cdn.telerik.com/2019.2.514/js/jquery.min.js"></script> <script src="https://kendo.cdn.telerik.com/2019.2.514/js/jszip.min.js"></script> <script src="https://kendo.cdn.telerik.com/2019.2.514/js/kendo.all.min.js"></script> <script src="https://kendo.cdn.telerik.com/2019.2.514/js/kendo.aspnetmvc.min.js"></script> <environment names="Development"> <link rel="stylesheet" href="~/lib/bootstrap/css/bootstrap.css" /> <link rel="stylesheet" href="~/css/site.css" /> </environment> <environment names="Staging,Production"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" asp-fallback-href="~/lib/bootstrap/css/bootstrap.min.css" asp-fallback-test-class="sr-only" asp-fallback-test-property="position" asp-fallback-test-value="absolute" /> <link rel="stylesheet" href="~/css/site.min.css" asp-append-version="true" /> </environment></head><body class="k-content"> <kendo-window name="windowChangeUser" title="Change User" draggable="true" resizable="false" width="250" height="200" modal="true" visible="false" > <content> <div style="font-size: 13px; padding-top: 20px;"> <p> Enter a username to switch to </p> <p style="padding-top: 20px;"> <input type="text" class="k-textbox" id="userName" /> </p> </div> <div style="padding-top: 20px; text-align: center"> <kendo-button name="buttonChangeUserOk" type="submit" on-click="windowClose" > <content>OK</content> </kendo-button> </div> </content> </kendo-window> <nav class="navbar navbar-inverse navbar-fixed-top p-3"> <div class="container p-0 p-sm-3"> <kendo-button id="buttonOpenWindow" on-click="openWindow"> <content>Show me the window!</content> </kendo-button> <div class="navbar-header"> <kendo-button name="configure" tag="button" icon="menu" class="k-rpanel-toggle k-primary btn-toggle"></kendo-button> <a asp-controller="Home" asp-action="Index" class="navbar-brand">Your .NET Core Application</a> </div> <div id="responsive-panel" class="navbar-left"> <kendo-responsivepanel name="responsive-panel" auto-close="false" breakpoint="768" orientation="top"> @(Html.Kendo().Menu() .Name("Menu") .Items(items => { items.Add().Text("Home").Action("Index", "Home", new { area = "" }); items.Add().Text("About").Action("About", "Home", new { area = "" }); items.Add().Text("Contact").Action("Contact", "Home", new { area = "" }); }) ) </kendo-responsivepanel> </div> </div> </nav> <main> <div class="container"> @RenderBody() </div> </main> <footer class="footer text-center d-flex align-items-center"> <div class="container pb-0"> <hr /> <p class="text-muted"> Copyright © @DateTime.Now.Year Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved. </p> </div> </footer> <environment names="Development"> <script src="~/lib/bootstrap/js/bootstrap.js"></script> </environment> <environment names="Staging,Production"> asp-fallback-src="~/lib/bootstrap/js/bootstrap.min.js" asp-fallback-test="window.jQuery && window.jQuery.fn && window.jQuery.fn.modal"></script> </environment> @RenderSection("scripts", required: false)</body></html><script type="text/javascript"> function openWindow() { var window = $("#windowChangeUser").data("kendoWindow"); window.center(); window.open(); } function windowClose() { var window = $("#windowChangeUser").data("kendoWindow"); window.close(); }</script>
Hi
I have Grid with 4 columns. When I edit a row, enter number in cell 2, I want to update cell 4 with the result of cell 2 - cell 3.
Can anyone advice how I can do this urgently? Thanks in Advance
Below is the code of my grid
@(Html.Kendo().Grid<TransactionCoBroker>().Name("GridCommExCoBroker").Editable(editable => editable.Mode(GridEditMode.InLine)).Columns(columns =>{ columns.Command(c => c.Edit()); columns.Bound(u => u.Name).Title("Name"); columns.Bound(u => u.FNet).Title("Net")); columns.Bound(u => u.FTax).Title("Tax")); columns.Bound(u => u.FGross).Title("Amount"));}).DataSource(dataSource => dataSource.Ajax().Model(model =>{ model.Id(id => id.ICobrokerId); model.Field(p => p.UName).Editable(false); model.Field(p => p.FNet).Editable(true); model.Field(p => p.FTax).Editable(true); model.Field(p => p.FGross).Editable(false);}).Events(e => e.Error("onError").RequestEnd("onRequestEnd")).ServerOperation(true).Read(r => r.Url("?handler=GetExCoBrokerComm").Data("GetTransID")).Update(r => r.Url("?handler=SaveBrokerComm").Data("GetTransID")))).Columns(columns =>
{
columns.Select().Width(50).Locked(true);
....
}
.Selectable(selectable => selectable
.Mode(GridSelectionMode.Multiple)
.Type(GridSelectionType.Cell))
error
// .ColumnMenu(columnmenu => columnmenu.Columns(true).Filterable(true).Sortable(true))
.Filterable(filterable =>
{
filterable.Mode(GridFilterMode.Menu);
filterable.Extra(false);
})
display error
.ColumnMenu(columnmenu => columnmenu.Columns(true).Filterable(true).Sortable(true))
.Filterable(filterable =>
{
filterable.Mode(GridFilterMode.Menu);
filterable.Extra(false);
})
display ok

.Filterable(filterable =>
{
filterable.Mode(GridFilterMode.Menu);
filterable.Extra(false);
})
display error
.ColumnMenu(columnmenu => columnmenu.Columns(true).Filterable(true).Sortable(true))
.Filterable(filterable =>
{
filterable.Mode(GridFilterMode.Menu);
filterable.Extra(false);
})
display ok

