Je souhaite mettre en forme la date au format mm/dd/yyyy
. J'ai essayé ce qui suit et rien de tout cela ne fonctionne pour moi. Est-ce que quelqu'un peut m'aider avec ça?
référence: ui-date
<input ui-date ui-date-format="mm/dd/yyyy" ng-model="valueofdate" />
<input type="date" ng-model="valueofdate" />
angularjs
date
format
date-format
datefilter
utilisateur16
la source
la source
ui-date-format="mm/dd/yyyy"
complètement? Il semble que le comportement par défaut sans cette option soit ce que vous voulez.$formatters
et$parsers
par cette réponse a résolu mon problème similaire.Réponses:
Angular.js a un filtre de date intégré.
démo
Vous pouvez voir les formats de date pris en charge dans la source du filtre de date .
modifier :
Si vous essayez d'obtenir le bon format dans le sélecteur de date (pas clair si vous utilisez le sélecteur de date ou essayez simplement d'utiliser son formateur), ces chaînes de format prises en charge sont ici: https://api.jqueryui.com/datepicker/
la source
Si vous n'avez pas de champ de saisie, mais souhaitez simplement afficher une date de chaîne avec un formatage approprié, vous pouvez simplement opter pour:
et dans le fichier js, utilisez:
Cela convertira la date sous forme de chaîne en un nouvel objet de date en javascript et affichera la date au format MM / jj / aaaa.
Sortie: 15/12/2014
Edit
Si vous utilisez une chaîne de date au format "2014-12-19 20:00:00" (transmise par un backend PHP), vous devez alors modifier le code en celui de: https://stackoverflow.com / a / 27616348/1904479
Ajout d'autres éléments
De javascript, vous pouvez définir le code comme:
c'est-à-dire au cas où vous auriez déjà une date avec vous, sinon vous pouvez utiliser le code suivant pour obtenir la date système actuelle:
Pour plus de détails sur les formats de date, consultez: https://docs.angularjs.org/api/ng/filter/date
la source
J'utilise ceci et cela fonctionne très bien.
la source
Ce n'est pas vraiment ce que vous demandez - mais vous pouvez essayer de créer un champ de saisie de date en html quelque chose comme:
Ensuite, pour imprimer ceci sur la page que vous utiliseriez:
Enfin, dans mon contrôleur, j'ai déclaré une méthode qui crée une date à partir de la valeur d'entrée (qui dans Chrome est apparemment analysée 1 jour de congé):
Alors là vous l'avez. Pour voir le tout fonctionner, consultez le plunker suivant: http://plnkr.co/edit/8MVoXNaIDW59kQnfpaWW?p=preview. Bonne chance!
la source
Cela fonctionnera:
REMARQUE: une fois que vous les remplacez, les dates / millis restants seront convertis en foramt donné.
la source
voir
date
api angulaire : API AngularJS: dateLe
date
filtre angulaire :Usage:
Exemple:
Code:
Résultat:
la source
J'utilise le filtre
puis
la source
Passez simplement le format de date UTC de votre code côté serveur au côté client
et utilisez la syntaxe ci-dessous -
la source
Après avoir examiné toutes les solutions ci-dessus, la solution suivante a été la plus rapide pour moi. Si vous utilisez un matériau angulaire:
Pour définir le format:
Edit: Vous devez également définir le parseDate pour taper une date (à partir de cette réponse Changer le format de md-datepicker dans Angular Material )
la source
Ici, le nom du contrôleur est "myController" et le nom de l'application est "myApp".
Le résultat ressemblera à ceci: - * 10-29-2010 * 01-03-2013
la source
Ok, le problème semble provenir de cette ligne:
https://github.com/angular-ui/ui-date/blob/master/src/date.js#L106 .
En fait, cette ligne est la liaison avec jQuery UI qui devrait être l'endroit où injecter le format de données.
Comme vous pouvez le voir,
var opts
il n'y a pas de propriétédateFormat
avec la valeur de ng-date-format comme vous pourriez l'espérer.Quoi qu'il en soit, la directive a une constante appelée
uiDateConfig
à laquelle ajouter des propriétésopts
.La solution flexible (recommandée):
De là, vous pouvez voir que vous pouvez insérer des options en injectant dans la directive une variable de contrôleur avec les options jquery ui.
La solution codée en dur:
Si vous ne souhaitez pas répéter cette procédure tout le temps, changez la valeur de
uiDateConfig
in date.js en:la source
J'ai eu le même problème et comme les commentaires ci-dessus, j'ai pensé qu'il devait y avoir une méthode native en JavaScript. La chose
new Date(valueofdate)
retourne un objet Date.Mais, vérifiez http://www.w3schools.com/js/js_date_formats.asp , la partie qui dit zéro non significatif. Une date d'une chaîne, par exemple un écho de PHP, doit être comme:
Cela passera une chaîne, par exemple:
'1999-3-3'
et JavaScript effectuera l'analyse d'un objet avec le bon format avecLien vers PHP pour les formats de date: http://www.w3schools.com/php/func_date_date_format.asp .
la source
ng-bind="reviewData.dateValue.replace('/Date(','').replace(')/','') | date:'MM/dd/yyyy'"
Utilisez cela devrait bien fonctionner. :) Les champs reviewData et dateValue peuvent être modifiés selon votre paramètre reste peut être laissé le même
la source
la source
la source