obtenir toutes les dates comprises entre deux dates
j'ai un problème lorsque l'utilisateur sélectionne une plage de dates. j'ai besoin de savoir à quelles dates se situent entre ces deux dates sélectionnées. ils arrivent via jquery avec quelque chose d'aussi simple que de
$('#from').val()+"-"+$('#to').val();
ils viennent de jqueryUI datepicker et ils suffit de regarder comme
08/07/2013 - 08/09/2012
mais je ne peux pas comprendre comment, étape par le biais de la date et de déterminer les jours entre les deux. j'ai besoin des dates précises, mais cela devient vraiment compliqué avec des choses comme la fin du mois, et le nombre de jours dans chaque mois. dans cet exemple précis, j'avais besoin d'obtenir
08/07/2013, 08/08/2013, 08/09/2013
getDate
et de travailler avec des objets date à la place? Il va faire de votre vie beaucoup plus facile.si j'ai deux objets date, comment puis-je obtenir tous les un entre-deux?
OriginalL'auteur patricko | 2013-08-07
Vous devez vous connecter pour publier un commentaire.
Vous pouvez saisir les valeurs de votre sélecteurs de date à l'aide de la
getDate
méthode, car cela va vous renvoyer un objet Date. Puis, en commençant à la date de début de l'incrément "actuel" date d'ici le 1er jour et l'ajouter à un tableau jusqu'à la date actuelle est la même que la date de fin.Notez que vous aurez besoin de créer une nouvelle Date() lors de l'ajout à la
between
de tableau, ou bien vous venez de faire référence à lacurrentDate
objet et tous vos valeurs seront les mêmes.Travail De Démonstration
currentDate.setDate(currentDate.getDate()) ;
etwhile (currentDate <= end)
Pas sûr de ce que tu veux dire?
Votre code n'inclut pas le dates sélectionnées. Si vous sélectionnez 8/7 et 8/9 il veut obtenir 8/7, 8/8 et 8/9. Votre code ne pousse dans le tableau 8/8. Suivre?
Je vois, donc entre le tableau ne contient que les dates entre les dates choisies. Je suppose que pourrait être un problème, même si le
start
etend
les variables ont des valeurs sélectionnées.oui, je veux toutes les dates, mais je crois que je peux résoudre ce problème en utilisant
start
àbetween
àend
et de les mettre ensembleOriginalL'auteur cfs
OriginalL'auteur Pec1983