2010-02-10 9 views
5

Gibt es irgendjemanden, der eine Zuordnung des C# dateFormats zum datePicker dateFormat gemacht hat, da ich das C# dateFormat bereits kenne, möchte ich das nicht überprüfen müssen datepicker Dokumentation jedes Mal, wenn ich ein benutzerdefiniertes Format erstellen muss.jQuery.ui.datepicker mit Asp.Net MVC dateFormat Mapping

für exmple, ich will in meinem Helfer Datumsformat angeben können, von 'dd/MM/yy' (C#) und es wäre es konvertieren zu 'TT/MM/JJ' Datepicker

Antwort

9

Ein möglicher Ansatz direkt sein würde, die .NET-Formatbezeich mit ihren jquery Pendants ersetzen, wie Sie im folgenden Code sehen:

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

Originalquelle: http://rajeeshcv.com/2010/02/28/JQueryUI-Datepicker-in-ASP-Net-MVC/

+0

Thx, sieht gut aus, ich muss das jetzt versuchen ... –

0

Vielleicht können Sie verwenden Sie so etwas wie folgt aus:

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

und diese:

$(function() { 
    $("input.datebox").each(function() { 
     $(this).datepicker({ dateFormat: $(this).attr("dateFormat") }); 
    }); 
}); 
+0

Das ist nicht das, was ich will, was ich will, ist das gleiche Format in C# als in der Datumsauswahl angeben, einen benutzerdefinierten Helfer verwendet, so kann die Umwandlung Daone in C# seine Zum Beispiel ist 'dd/mm/yy' im datePicker 'dd/MM/yy' in C#. –