jQuery.ui.datepicker con asp.net mvc dateFormat Mapeo
-
19-09-2019 - |
Pregunta
¿Hay algún lugar alguien que hizo una asignación de C# DateFormat a la Fecha DateFormat, ya que ya conozco el C# DateFormat, no quiero tener que consultar la documentación de DatePicker cada vez que tengo que crear un formato de fecha personalizado?
Para Exmple, quiero poder especificar en mi Helper DateFormat de 'DD/MM/YY' (C#) y lo convertiría en 'DD/MM/YY' DatePicker
Solución
Un enfoque posible sería reemplazar directamente los especificadores de formato .NET con sus contrapartes jQuery como puede ver en el siguiente código:
public static string ConvertDateFormat(string format)
{
string currentFormat = format;
// Convert the date
currentFormat = currentFormat.Replace("dddd", "DD");
currentFormat = currentFormat.Replace("ddd", "D");
// Convert month
if (currentFormat.Contains("MMMM"))
{
currentFormat = currentFormat.Replace("MMMM", "MM");
}
else if (currentFormat.Contains("MMM"))
{
currentFormat = currentFormat.Replace("MMM", "M");
}
else if (currentFormat.Contains("MM"))
{
currentFormat = currentFormat.Replace("MM", "mm");
}
else
{
currentFormat = currentFormat.Replace("M", "m");
}
// Convert year
currentFormat = currentFormat.Contains("yyyy") ? currentFormat.Replace("yyyy", "yy") : currentFormat.Replace("yy", "y");
return currentFormat;
}
Fuente original: http://rajeeshcv.com/2010/02/28/jqueryui-datepicker-in-asp-net-mvc/
Otros consejos
Tal vez puedas usar algo como esto:
<%= Html.TextBoxFor(x => x.SomeDate, new { @class = "datebox", dateformat = "dd/mm/yy" })%>
y esto:
$(function() {
$("input.datebox").each(function() {
$(this).datepicker({ dateFormat: $(this).attr("dateFormat") });
});
});
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow