Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    2

    calendario segna la data giusta, ma il giorno sbagliato

    Salve a tutti.

    Mi sono appena iscritto e vi scrivo per sottoporvi un problema che non so risolvere. Nella mia pagina web, dopo aver lungo cercato, ho trovato e inserito un calendario in Javascript a cui ho modificato solo la lingua dei giorni e dei mesi. Solo oggi ho notato che segna la data di oggi, ma come giorno segna sabato.
    Non sono per nulla esperto di sintassi java e quindi non so davvero dove mettere le mani.

    Questa la pagina in cui è possibile verificare il curioso malfunzionamento.

    www.intermezzoitaliano.com

    e questo il codice java del calendario.
    Vi ringrazio fin da ora per l'aiuto che potrete darmi.

    <html><body>
    <table border="0" cellpadding="5" cellspacing="0">
    <tr>
    <td align="center" valign="middle" bgcolor="#eeeeee">
    <table border="0" cellpadding="5" cellspacing="0" bgcolor="#FFFFFF">
    <tr>
    <td align="center" valign="middle"> <SCRIPT LANGUAGE="JavaScript">
    monthnames = new Array(
    "Januar",
    "Februar",
    "M&auml;rz",
    "April",
    "Mai",
    "Juni",
    "Juli",
    "August",
    "September",
    "Oktober",
    "November",
    "Dezemeber");
    var linkcount=0;
    function addlink(month, day, href) {
    var entry = new Array(3);
    entry[0] = month;
    entry[1] = day;
    entry[2] = href;
    this[linkcount++] = entry;
    }
    Array.prototype.addlink = addlink;
    linkdays = new Array();
    monthdays = new Array(12);
    monthdays[0]=31;
    monthdays[1]=28;
    monthdays[2]=31;
    monthdays[3]=30;
    monthdays[4]=31;
    monthdays[5]=30;
    monthdays[6]=31;
    monthdays[7]=31;
    monthdays[8]=30;
    monthdays[9]=31;
    monthdays[10]=30;
    monthdays[11]=31;
    todayDate=new Date();
    thisday=todayDate.getDay();
    thismonth=todayDate.getMonth();
    thisdate=todayDate.getDate();
    thisyear=todayDate.getYear();
    thisyear = thisyear % 100;
    thisyear = ((thisyear < 50) ? (2000 + thisyear) : (1900 + thisyear));
    if (((thisyear % 4 == 0)
    && !(thisyear % 100 == 0))
    ||(thisyear % 400 == 0)) monthdays[1]++;
    startspaces=thisdate;
    while (startspaces > 7) startspaces-=7;
    startspaces = thisday - startspaces + 1;
    if (startspaces < 0) startspaces+=7;
    document.write("<table border=0 bgcolor=#FFFFFF ");
    document.write("bordercolor=black><font color=black face=verdana>");
    document.write("<tr><td colspan=7><center>"
    + monthnames[thismonth] + " " + thisyear
    + "
    </center></font></td></tr>");
    document.write("<tr>");
    document.write("<td align=center>mo</td>");
    document.write("<td align=center>di</td>");
    document.write("<td align=center>mi</td>");
    document.write("<td align=center>do</td>");
    document.write("<td align=center>fr</td>");
    document.write("<td align=center>sa</td>");
    document.write("<td align=center>so</td>");
    document.write("</tr>");
    document.write("<tr>");
    for (s=0;s<startspaces;s++) {
    document.write("<td> </td>");
    }
    count=1;
    while (count <= monthdays[thismonth]) {
    for (b = startspaces;b<7;b++) {
    linktrue=false;
    document.write("<td>");
    for (c=0;c<linkdays.length;c++) {
    if (linkdays[c] != null) {
    if ((linkdays[c][0]==thismonth + 1) && (linkdays[c][1]==count)) {
    document.write("<a href=\"" + linkdays[c][2] + "\">");
    linktrue=true;
    }
    }
    }
    if (count==thisdate) {
    document.write("<font color='E44401'>");
    }
    if (count <= monthdays[thismonth]) {
    document.write(count);
    }
    else {
    document.write(" ");
    }
    if (count==thisdate) {
    document.write("
    </font>");
    }
    if (linktrue)
    document.write("</a>");
    document.write("</td>");
    count++;
    }
    document.write("</tr>");
    document.write("<tr>");
    startspaces=0;
    }
    document.write("</table></p>");
    // End -->
    </SCRIPT> </td>
    </tr>
    </table>
    </td>
    </tr>
    </table></body></html>


  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Non ti basta scambiare l'ordine di questi?


    document.write("<td align=center>mo</td>");
    document.write("<td align=center>di</td>");
    document.write("<td align=center>mi</td>");
    document.write("<td align=center>do</td>");
    document.write("<td align=center>fr</td>");
    document.write("<td align=center>sa</td>");
    document.write("<td align=center>so</td>");

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    2
    Ciao e grazie per la risposta

    Per la verità ci ho pensato e ho fatto perfino la prova ed in effetti funziona. Tuttavia, mi sembrava un modo poco ortodosso e visto che per me si tratta di cose del tutto ignote, ho anche pensato che non fosse la strada giusta. Mi sono anche domandato se poi non scombina i successivi mesi...

    edit: per ora ho fatto come mi hai suggerito....

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.