mvc ejemplos calendarios c# google-chrome knockout.js kendo-ui datepicker

c# - ejemplos - Kendo UI datepicker incompatible con Chrome 56



jquery ui datepicker es js (2)

Después de actualizar Chrome a su última versión 56.0.2924.76 (64-bit), nuestros datapickers de Kendo comenzaron a no funcionar correctamente.

Todos los datapickers fueron enlazados usando ViewModels, y ahora no muestran sus valores. Si los inspeccionamos vemos que el valor está establecido, pero no se ha mostrado.

Por ejemplo:

@(Html.Kendo().DatePicker() .Name("DateFrom") .Start(CalendarView.Month) .Depth(CalendarView.Month) .Format("MM/dd/yyyy") .HtmlAttributes(new { @id = "ClosingStartDate", @placeholder = "enter date from", @class = "masked-date" }))

Si inspecciono este elemento con la herramienta de desarrollo de Chrome, tengo este resultado:

<input class="k-input masked-date" id="ClosingStartDate" name="DateFrom" placeholder="enter date from" type="text" value="12/21/2016" data-role="datepicker" readonly="" disabled="disabled" maxlength="20" style="width: 100%;">

Pero es un espectáculo como este

Cuando vinculamos valor de propiedad con KnockOut, todos los datapickers funcionan bien.

Nuestra versión de Kendo es: Kendo UI Complete v2012.2.913

¿Hay alguna otra forma de vincularlo? ¿Qué deberíamos cambiar usando Chrome v.56?


Actualmente, el contenedor DatePicker representa el tipo de elemento INPUT "fecha". Cuando el Kendo DatePicker se inicializa en el cliente, cambia el tipo de entrada a "texto". Por lo tanto, evitamos la representación nativa de la entrada de "fecha". Si el JavaScript está desactivado, Kendo DatePicker no se inicializará y la entrada se podrá usar como una nativa.

Desafortunadamente, algunos navegadores con soporte nativo para el tipo de "fecha" (Chrome en particular) validan el valor establecido y, si no está en el formato correcto (una fecha completa válida como se define en [RFC 3339]), entonces se ignora. Por ahora puede cambiar el tipo de entrada a "texto" permanentemente y evitar cualquier problema relacionado con las entradas nativas:

@(Html.Kendo().DatePicker() .Name("datepicker") .Value("10/10/2011") .HtmlAttributes(new { type = "text" }))

Acabo de agregar attribute type="text" basado en la sugerencia en el foro de Kend UI y me funciona.

Aquí hay un enlace: http://www.telerik.com/forums/date-field-not-rendering-correct-in-browsers-that-support-html-5


Puedo solucionar esto agregando un formato a DatePicker (), intente esto

@(Html.Kendo().DatePicker() .Name("dateReturn") .Format("yyyy-MM-dd") .Value(DateTime.Today) .Min(DateTime.Today) ............... )