web-dev-qa-db-fra.com

Comment définir la valeur d'une zone de texte textmode = date ASP.NET C #

S'il vous plaît aidez-moi si vous le pouvez.

J'essaie de définir une zone de texte textmode = date à partir d'une variable.

C'est comme ça:

txtDataDespesa.Text = d.DataDespesa.ToShortDateString();

Le problème est que lorsque je vais visualiser la page, la valeur de d.DataDespesa.ToShortDateString() ne s'affiche pas dans le txtDataDespesa, ce sont plutôt les valeurs par défaut dd/mm/yyyy

Merci d'avance.

15
Welington

Cela n'a rien à voir avec asp.net, mais Html5. Lors de l'utilisation de type="date" vous devez toujours utiliser le format yyyy-MM-dd ( norme W3C )

Le problème est que dans les navigateurs qui ne prennent pas en charge type = date, cela apparaîtra comme 2014-03-30, mais sur les navigateurs qui le prennent en charge, il s'affiche en fonction des paramètres régionaux dans le système d'exploitation client.

Il se peut donc que ce soit 2014-03-30, 30.March.2014 ou Mar-30-2014, l'utilisateur n'a aucun contrôle sur le format.

29
Peter Hahndorf

afaik, la nouvelle zone de texte en .Net avec textmode=date ne prend en charge que YYYY-MM-DD format.

txtDataDespesa.Text = d.DataDespesa.ToString("yyyy-MM-dd")

si vous avez besoin de la chaîne de date courte, vous devez utiliser une zone de texte standard.

13
Raja Nadar
dt_calculate_to_date.Text = DateTime.Today.ToString("yyyy-MM-dd");

fonctionnera et a travaillé

if !ispostback
8
Arun Prasad E S