PDA

View Full Version : [JAVASCRIPT] Problema document.write


Baio84
25-02-2013, 20:14
Ciao a tutti. Sto cercando di imparare un po' di codice javascript, e lo sto facendo traducendo un calendario che avevo fatto in php in javascript. Dopo alcune righe che sembrava andare tutto per il meglio, il codice mi si blocca ad un document.write dopo scrivo un po' di codice html. Premetto che ho già provato a mettere i backslash alle virgolette, ma nulla. Ora vi posto il codice sperando qualcuno riesca a illuminarmi :old:

<script type="text/javascript">
var data = new Date();
var nr_giorno = data.getDay();
var giorno = data.getDate();
var mese = data.getMonth() + 1;
var anno = data.getFullYear();
document.write(nr_giorno + "/" + giorno + "/" + mese + "/" + anno + "<br />");

var inizio_conteggio = giorno;
var giorn = nr_giorno;
var giorni = new Array();
while (inizio_conteggio > 0)
{
giorni[inizio_conteggio--] = giorn--;
if (giorn < 0)
giorn = 6;
}
inizio_conteggio = giorno;
giorn = nr_giorno;
document.write(inizio_conteggio + "/" + giorn + "/" + giorni[25] + "<br />");

if (mese == 1 || mese == 3 || mese == 5 || mese == 7 || mese == 8 || mese == 10 || mese == 12)
var ultimo_giorno = 31;
else if (mese == 4 || mese == 6 || mese == 9 || mese == 11)
var ultimo_giorno = 30;
else if (anno % 4 == 0)
var ultimo_giorno = 29;
else
var ultimo_giorno = 28;
document.write(ultimo_giorno + "<br />");

while (inizio_conteggio <= ultimo_giorno)
{
giorni[inizio_conteggio++] = giorn++;
if (giorn > 6)
giorn = 0;
}

var inizio = 0;
var g = giorni [1];
var mesi = new Array("Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre");
//document.write(mesi[2]+'<br />');

document.write("<table class=\"bordo\" align=\"center\"><tr align=\"center\"><td colspan=\"7\"><b></b></td></tr>
<tr align=\"center\"><td colspan=\"7\"><b></b></td></tr>
<tr align=\"center\"><td class=\"festivo\">DO</td><td class=\"feriali\">LU</td><td class=\"feriali\">MA</td><td class=\"feriali\">ME</td><td class=\"feriali\">GI</td><td class=\"feriali\">VE</td><td class=\"feriali\">SA</td></tr><tr align=\"center\">");

</script>

kwb
26-02-2013, 15:00
Secondo Dreamweaver c'è un errore nell'ultimo document.write.
Ho provato a guardare attentamente ma non trovo niente, mi pare tutto giusto :what:

Baio84
26-02-2013, 15:20
È possibile che document.write faccia fatica a scrivere righe troppo lunghe? Non capisco proprio perchè mi dia errore.

Piccolo OT: Dreamweaver fa controlli anche su codice PHP?

kwb
26-02-2013, 21:49
È possibile che document.write faccia fatica a scrivere righe troppo lunghe? Non capisco proprio perchè mi dia errore.

Piccolo OT: Dreamweaver fa controlli anche su codice PHP?
Mha non credo sia per questo... Magari aspetta che arrivi qualcuno esperto...
O nel mentre, prova a spezzare il codice con più document.write , magari c'è un errore che ci sfugge...

Per PHP: Penso di si. Lo fa di html e js e si può scrivere anche in php ( ma non ti interpreta però le pagine ).

Ballantine
26-02-2013, 22:00
Prova a scrivere il contenuto dell'ultima document.write su un'unica riga, ho fatto una prova al volo su jsFiddle e così funziona :)

Baio84
27-02-2013, 11:47
Ottimo! :yeah:

Sono abituato col PHP ad andare a capo quando voglio, ma si vede che a Javascript va indigesto!

Grazie mille