所以我有我的功能(使用ajax):
function show_statsMonth($element,$id,$annee)
{
$objResponse = new xajaxResponse();
$tpl = new PHPTAL();
$tpl->setTemplate('templates/lightboxes/statsDays.tpl.xhtml');
$data = array();
/*Enregistrement du nombre d'acces par mois dans un tableau*/
$objDatabase = QApplication::$Database[1];
}
创建我的两个日期后
$dateL = explode('-', date("Y-m-d",mktime(0,0,0,2,1)) );
$dayL = new QDateTime();
$dayL->setDate(intval($dateL[0]), intval($dateL[1]), intval($dateL[2]));
$dateF = explode('-', date("Y-m-d",mktime(0,0,0,1,1)) );
$dayF = new QDateTime();
$dayF->setDate(intval($dateF[0]), intval($dateF[1]), intval($dateF[2]));
if($annee ==NULL){
$annee='2015';
}
else{
$dayL->setDate(intval($annee), intval($dateL[1]), intval($dateL[2]));
$dayF->setDate(intval($annee), intval($dateF[1]), intval($dateF[2]));
}
最后我调用我的模板,我的Jquery Datepicker 像这样:
$objResponse->call("activateDatePickerMonth2",$element,$id,'new');
我的日期选择器是这样的:
function activateDatePickerMonth2(element,id,action) {
$("#watchby li a").removeClass("active");
$("#as_a_month").addClass("active");
$('.date-picker').datepicker( "destroy" );
$('.date-picker').datepicker( {
changeYear: true,
showButtonPanel: false,
dateFormat: 'yy-mm',
onChangeMonthYear: function(year, month, inst) {
dpY=year;
dpM=month;
xajax_show_statsMonth(element,id,dpY);
}
});$
我不知道为什么但是我的日期选择卡在同一年被卡住了,我无法改变我选择的那一年,它被困在'2015'
我的问题是为什么以及我如何使用我在datepicker上给出的年份创建一个新模板来显示新的统计数据。
答案 0 :(得分:0)
我的猜测是这段代码导致了问题:
// I do not see $annee being used before this, so it might be always NULL here
if($annee == NULL){
$annee='2015';
// I also do not see $annee being used again after this. If we set it to '2015' where is it used again?
}else{
$dayL->setDate(intval($annee), intval($dateL[1]), intval($dateL[2]));
$dayF->setDate(intval($annee), intval($dateF[1]), intval($dateF[2]));
// Why are you setting the dates again here, if you just set them above?
}
请您澄清一下这段代码吗?