J'ai un .cshtml avec un daterangepicker.js implémenté dedans. Cette page obtient la plage de dates (à ce jour, à partir de la date) d'une page parente via ViewBag. Le code est le suivant:Daterangepicker moment() renvoie les nombres
var _FromDate;
var _EndDate;
$(function() {
var from1 = '@ViewBag.from_date';
var from = from1.split("-");
var f = new Date(from[0], from[1] - 1, from[2]);
var to1 = '@ViewBag.to_date';
var to = to1.split("-");
var t = new Date(to[0], to[1] - 1, to[2]);
var start = (f.getFullYear() + '-' + pad((f.getMonth() + 1), 2) + '-' + pad(f.getDate(), 2));
var end = (t.getFullYear() + '-' + pad((t.getMonth() + 1), 2) + '-' + pad(t.getDate(), 2));
function cb(start, end) {
$('#reportrange span').html(start + ' . ' + end);
var dateRange = $('#reportrange span').html();
_FromDate = dateRange.substring(0, dateRange.indexOf('.'));
_EndDate = dateRange.substring(dateRange.indexOf('.') + 1);
};
function pad(str, max) {
str = str.toString();
return str.length < max ? pad("0" + str, max) : str;
}
$('#reportrange').daterangepicker({
startDate: start,
endDate: end,
locale: { format: "YYYY-MM-DD" },
ranges: {
'Today': [moment(), moment()],
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
'This Month': [moment().startOf('month'), moment().endOf('month')],
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
}
}, cb);
cb(start, end);
});
Maintenant, voici le problème: lors de l'exécution de la page, le daterangepicker retourne la date a string of numbers
Quelle est la cause du problème? J'ai parcouru le code étape par étape et je n'arrive pas à trouver le problème.
Toute aide est appréciée!
peut vous console.log les valeurs de ** partir1 ** et ** à1 ** et coller ici, juste après leur déclaration respective ... –
@ThirueswaranRajagopalan c'est parti: de1 shows 2017-09-10 et to1 shows 2017-09-10 (parce qu'à la page précédente j'ai choisi 'Today' donc ça montre les mêmes valeurs pour les deux from1 et to1 – ragg
C'est tout bon, c'est juste '$ ('# reportrange span'). Html (début + '.' + Fin);' le ** début ** et ** fin ** sont convertis en un horodatage unix (ms) –