2017-11-06 1 views
0

Ich habe benutzerdefinierte Popup-Fenster und es funktioniert. Außerdem lese ich Daten aus der Datenbank korrekt und verbinde Daten. Beim Bearbeiten dieser Einträge aus dem Popup, wenn Datum oder Monat über 12 ist, gibt es einen Fehler bei localhost und sagt, dass zum Beispiel "12/08/'2011 kein gültiges Datum ist. Hier sind meine Codes, bitte hilf mir ..Kendo Parsing Date

@model xxxx.Il 

<h3>Customized Il</h3> 
<br /> 
@Html.HiddenFor(model => model.Id) 
@Html.HiddenFor(model => model.CustId) 
@Html.HiddenFor(model => model.DegistirenKullanici) 
@Html.HiddenFor(model => model.DegistirmeTarihi) 
@Html.HiddenFor(model => model.KayitKullanici) 
<div> 
    @Html.LabelFor(model => model.IlAdi) 
    @Html.EditorFor(model => model.IlAdi) 
    @Html.ValidationMessageFor(model => model.IlAdi) 
</div> 

<div> 
    @Html.LabelFor(model => model.KayitTarihi) 
    @Html.Kendo().DatePickerFor(model => model.KayitTarihi).Format("dd/mm/yyyy") 
    @Html.ValidationMessageFor(model => model.KayitTarihi) 
</div> 
<script> 
    kendo.culture("en-GB"); 
</script> 

Und hier ist meine Ansicht cshtml Codes;.

@using Kendo.Mvc.UI; 
@model xxxxx.Il 
<section id="gallery"> 
    <h2 class="ra-well-title">Iller</h2> 


    <div> 
     <input id='txtIlId' value="" style="width:100%; text-align:center;" class="k-textbox" placeholder="Id'ye göre Arama'" /> 
     <br> 
     <br /> 
     <input id='txtIlAdi' value="" style="width:100%; text-align:center;" class="k-textbox" placeholder="Ada göre Arama'" /> 
     <br> 
     <br /> 
    </div> 
    <script> 
    kendo.culture("en-GB"); 
    </script> 
    @(Html.Kendo().Grid<xxxx.Il>().Name("Iller") 
    .Columns(columns => 
    { 
     columns.Bound(p => p.Id); 
     columns.Bound(p => p.IlAdi); 
     columns.Bound(p => p.DegistirenKullanici); 
     columns.Bound(p => p.DegistirmeTarihi); 
     columns.Bound(p => p.KayitKullanici); 
     columns.Bound(p => p.KayitTarihi).Format("{0:dd/mm/yyyy}"); 
     columns.Command(command => { command.Edit(); }).Width(250); 
    }) 
    .Pageable(pageable => pageable.Refresh(true)) 
     .Sortable() 
     .AutoBind(true) 
     .Selectable() 
     .Navigatable() 
     .Filterable() 
     .Editable(ed => ed.Mode(GridEditMode.PopUp).TemplateName("IlModel").Window(w => w.Width(450)).Window(w => w.Title("Düzenle"))) 
     .DataSource(dataSource => dataSource 
     .Ajax() 
     .PageSize(5) 
     .Events(events => events.Error("error_handler")) 
     .Model(model => model.Id(p => p.Id)) 
     .Read(read => read.Action("Il_Read", "Tanimlar").Data("getAdditionalData")) 
     .Update(update => update.Action("Il_Guncelle", "Tanimlar")) 
    ) 
    ) 
</section> 

<script type="text/javascript"> 
    function error_handler(e) { 
     if (e.errors) { 
      var message = "Errors:\n"; 
      $.each(e.errors, function (key, value) { 
       if ('errors' in value) { 
        $.each(value.errors, function() { 
         message += this + "\n"; 
        }); 
       } 
      }); 
      alert(message); 
     } 
    } 


    function onClickBul(e) { 
     //kendoConsole.log("event :: click (" + $(e.event.target).closest(".k-button").attr("id") + ")"); 
     $('#Iller').data('kendoGrid').dataSource.read(); 
    } 
    $('#txtIlAdi').keyup(function() { 
     $('#Iller').data('kendoGrid').dataSource.read(); 
    }); 

    function getAdditionalData(e) { 
     return { 
      //iMrpId: 2 
      Iladi: $('#txtIlAdi').val() 
     }; 
    } 


</script> 
+0

haben Sie versucht, es auch zu analysieren? – Keith

+0

Ja, ich habe alle Kombinationen zum Parsen ausprobiert. Aber, hat nicht funktioniert – KAYA

+0

Ich habe es erfolgreich verwendet und was ich tue, ist dies zu meinem Feld hinzufügen: Format: "{0: MM/TT/JJJJ", ParseFormats: ["MM-TT-JJJJ"], und dann verwende ich AJAX, um meine Daten einzubringen, und ich konvertiere es wie folgt: var dateobj = kendo.parseDate (dateReceived); var Datumszeichenfolge = kendo.toString (dateobj, "MM/TT/JJJJ"); Versuchen Sie dies und sehen, ob es funktioniert – Keith

Antwort

0

Dies ist die Art und Weise, wie ich einen Kendo Kalendertag erhalten

var selectedDate = kendo.toString(kendo.parseDate($("#diningCalendar").data("kendoCalendar").current()), 'MM/dd/yyyy') 

Verwendung kendo.toString(kendo.parseDate())

Hoffe das hilft.