Olá gente, bom dia!
Sei que muitos vão pensar que é repetitivo o post, mas o meu é uma problema diferenciado!
Bom, estou criando um calendário, e nesse caléndario terá uns dias que estão marcados com eventos
[code]
$aula[“2015”][“03”] = array(“13”, “27”, “28”);
$anoMesHoje = date("Y-m");
$html = "";
$jsDatepicker = "";
$jsDatasArray = array();
foreach ($aulas as $ano => $aulasMes) {
foreach ($aulasMes as $mes => $aulasDia) {
// Monta array js com datas
// Usado na marcação dos dias, por script
foreach ($aulasDia as $k => $dia) {
$data = "'" . $mes . "/" . $dia . "/" . $ano . "'";
$jsDatasArray[] = $data;
}
// Cria um jsDatepicker para cada ano-mes
// Estabelece data min e max para cada um
$diaIni = mktime(0, 0, 0, $mes, 1, $ano);
$diaFim = mktime(0, 0, 0, $mes+1, 0, $ano);
$jsDatepicker.= "$('#" . $ano . "-" . $mes . "').datepicker({
inline: true,
minDate: new Date(" . date("Y", $diaIni) . ", " . (date("m", $diaIni)-1) . ", " . date("d", $diaIni) . "),
maxDate: new Date(" . date("Y", $diaFim) . ", " . (date("m", $diaFim)-1) . ", " . date("d", $diaFim) . "),
beforeShowDay: function (date) {
var dia = (date.getDate() < 10) ? '0' + date.getDate() : date.getDate();
var mes = ((date.getMonth()+1) < 10) ? '0' + (date.getMonth()+1) : (date.getMonth()+1);
var ano = date.getFullYear();
var dat = mes + '/' + dia + '/' + ano;
return [true, $.inArray(dat, jsDatasArray) >= 0 ? 'datepck-dia' : ''];
}
});\n
";
// Verifica se ano/mes do curso é menor que ano/mes hoje, passado.
// Se for menor marca como passado.
$anoMes = $ano . "-" . $mes;
if ($anoMes < $anoMesHoje) {
$jsDatepicker.= "$('#" . $ano . "-" . $mes . " .ui-widget-content').addClass('low-opacity');\n";
} elseif ($anoMes == $anoMesHoje) {
$jsDatepicker.= "$('#" . $ano . "-" . $mes . " .ui-widget-content').addClass('month-now');\n";
}
$html.= "<div class=\"left datepck\" id=\"" . $ano . "-" . $mes . "\" ></div>\n";
}
}
echo $html;
?>[/code]
o problema é o seguinte, quero fazer com que o que esse calendário gera com os número tenha um link!
Já tentei fazer de vários modo, mas o problema é que quando clico em qualquer número do calendário ele da um load e perde toda formatação que coloquei por jquery! Exemplo: a retira dos titles! abaixo código jquery pra tentar solucionar e não deu! se alguém puder me ajudar!
[code]
$(document).ready(function() {
$.datepicker.setDefaults($.datepicker.regional[“pt-BR”]);
var jsDatasArray = [<?php echo implode(",", $jsDatasArray); ?>];
<?php echo $jsDatepicker; ?>
atualizarDadosCalendario();
});
$(window).load(function() {
$("a").click(function() {
atualizarDadosCalendario();
});
});
function atualizarDadosCalendario() {
$(".ui-datepicker-calendar span").each(function() {
$(this).removeAttr("title");
});
function atualizarDadosCalendario() {
$(".ui-datepick-dia span").each(function() {
alert("teste"); //preciso abrir um link caso tenha a class acima no lugar!
});
}
</script>[/code]