J'ai le code suivant
datePicker.change(function(){
dateSet = datePicker.val();
dateMinimum = dateChange();
dateSetD = new Date(dateSet);
dateMinimumD = new Date(dateMinimum);
if(dateSetD<dateMinimumD){
datePicker.val(dateMinimum);
alert('You can not amend down due dates');
}
})
6 Réponses :
Datset.split ('/') code> li>
- passez ces pièces dans le bon ordre au Constructeur de date. li>
ul>
La date JavaScript code> code> Constructor n'analyse pas les chaînes sous cette forme (au format britannique ou américain). Voir La spécification pour plus de détails, mais vous pouvez construire les dates PARTIE PAR PARTIE:
new Date(year, month, day);
Oui, il y a un problème avec le format de date que vous utilisez. Si vous ne définissez pas de format de date, la date par défaut utilisée est ou vous pouvez la définir ultérieurement comme suit: p> 'mm / dd / yy code>. Vous devez donc configurer votre formate de date préférée lorsque vous le créez comme suit lorsque vous créez le sélecteur de date:
Lorsque vous essayez de créer un objet de date: exemple: p> Remarque: Juvascript Date Le mois de l'objet commence avec 00, Vous devez donc ajuster votre dateset en conséquence. p> p>
JavaScript n'a pas d'arguments de mots clés de style python. Ce que vous faites dans l'exemple, c'est attribuer Datset.year code> à une variable globale accidentelle année code>!
C'est comme ça que j'ai fini par faire:
var lastRunDateString ='05/04/2012'; \\5th april 2012
var lastRunDate = new Date(lastRunDateString.split('/')[2], lastRunDateString.split('/')[1] - 1, lastRunDateString.split('/')[0]);
var dateString ='23/06/2015';
var splitDate = dateString.split('/');
var month = splitDate[1] - 1; //Javascript months are 0-11
var date = new Date(splitDate[2], month, splitDate[0]);
Les dates britanniques sont "jj / mm / aaaa" pas "mm / dd / aaaa".
Été un de ces jours. Question mise à jour.