2017-09-22 13 views
-2

Je veux un événement qui a actuellement sa date de début et de fin dans une liste comme:Comment tailler et concaténer des chaînes dans AngularJS

Event1={Start: 'Sep 18, 2017 10:00AM', End: 'Sep 18, 2017 11:00AM'} 

Comment puis-je couper et concaténer cette option pour afficher seulement Event1 comme Sep 18, 2017, 10:00 AM - 11:00 AM que mes dates de début et de fin d'événement sont toujours les mêmes, donc je n'ai pas besoin qu'elles soient affichées séparément.

Je pourrais les faire à la fois dans mon contrôleur ou dans le fichier HTML, je crois.

Merci

+0

Les événements se déroulent-ils uniquement le même jour? –

Répondre

0

Vous pouvez essayer dans votre contrôleur:

Event1 = Event1.Start + ' - ' + Event1.End.split(' ')[3];

0

Vous pouvez utiliser pur javascript pour cette astuce simple.

var Event1={Start: 'Sep 18, 2017 10:00AM', End: 'Sep 18, 2017 11:00AM'} 

var result= Event1.Start + ' - ' + Event1.End.split(' ')[3]; 

Sortie:

"Sep 18, 2017 10:00AM - 11:00AM" 
0

Vous pouvez écrire la méthode comme getTimeFromDate() ci-dessous pour obtenir du temps lorsque vous date de passage à cette méthode. Vous pouvez appeler cette méthode à partir de Html ou du contrôleur lui-même selon votre choix.

<html> 
<body> 

<p>Click the button to display the time as a string.</p> 

<button onclick="getTimeFromDate('September 22, 2017 11:12:00')">Hit Me!</button> 

<p id="demo"></p> 

<script> 
function getTimeFromDate(date) { 
    var d = new Date(date); 
    var n = d.toLocaleTimeString(); 
    document.getElementById("demo").innerHTML = n; 
} 
</script> 

</body> 
</html> 
0

Pour concat 2 chaîne vous pouvez utiliser '+' operator et couper une partie d'une chaîne, vous pouvez utiliser la fonction substr().

Vérifiez ci-dessous démo pour votre problème

var app = angular.module('myApp', []); 
 
app.controller('MyController', ['$scope', function($scope) { 
 
    $scope.title='Hello world'; 
 
var \t Event1={Start: 'Sep 18, 2017 10:00AM', End: 'Sep 18, 2017 11:00AM'}; 
 
\t $scope.newDate=Event1.Start+' - '+Event1.End.substr(Event1.End.length-7); 
 
\t 
 
}]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-controller='MyController' ng-app="myApp"> 
 
    <div>{{newDate}}</div> 
 
</div>