Pergunta

Existe algum lugar alguém que fez um mapeamento do C# DateFormat no DatePicker DateFormat, já que eu já conheço o C# DateFormat, não quero ter que verificar a documentação do DatePicker toda vez que tenho que criar um formato de data personalizado.

Para o Exmple, quero poder especificar no meu Dateformat de 'dd/mm/yy' (c#) e ele o converteria para 'dd/mm/yy' datepicker

Foi útil?

Solução

Uma abordagem possível seria substituir diretamente os especificadores de formato .NET por seus colegas jQuery, como você pode ver no código a seguir:

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;
}

Fonte original: http://rajeeshcv.com/2010/02/28/jqueryui-datepicker-in-asp-net-mvc/

Outras dicas

Talvez você possa usar algo assim:

<%= Html.TextBoxFor(x => x.SomeDate, new { @class = "datebox", dateformat = "dd/mm/yy" })%>

e isto:

$(function() {
    $("input.datebox").each(function() {
        $(this).datepicker({ dateFormat: $(this).attr("dateFormat") });
    });
});
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top