Avatar billede Slettet bruger
16. maj 2002 - 14:31 Der er 11 kommentarer og
2 løsninger

Kalender... Hvordan smider jeg den <tr></tr> ind?

Dette er en stump af det jeg har lavet som skal skrive tabellen ud. Jeg ved ikke rigtigt hvad if-sætningen skal tælle på for at skifte linie (<tr></tr>) Den skal skifte når den er 7 bred, eller når dagsNavn=0 som i søndag...

for (i = 1; 32 > i; i++)
    {       
        if (column == 7) //virker ikke i ASP men kun i javascript
            {
            Response.write("</tr><tr>")
        }

    Response.write("<td align='center'>" + i + "</td>");
    }
Avatar billede dk_akj Nybegynder
16. maj 2002 - 14:34 #1
du skal checke om column = 7, 14, 21 eller 28, så skulle det virker

Akj
Avatar billede skovtrold Nybegynder
16. maj 2002 - 14:38 #2
x = 1

Her starter du din løkke

If x = 7 Then
    response.write "<tr>"
    x = 1
End if

Response.write("<td align='center'>" + i + "</td>");

x = x+1

If x = 7 Then
response.write "</tr>"
Avatar billede Slettet bruger
16. maj 2002 - 14:38 #3
Glemte lige at sige at jeg ikke kan bruge if (column == 7)
Avatar billede skovtrold Nybegynder
16. maj 2002 - 14:39 #4
Du skal altså nulstille x hver gang den er løbet igennem 7 istedet for at tjekke efter "7-tabels-metoden"
Avatar billede Slettet bruger
16. maj 2002 - 14:42 #5
Jeg har lavet en kalender, hvor at f.eks. 1. maj er en Onsdag og derfor skal den ikke køre 7 gange men kun frem til søndag (4 gange)...
Avatar billede dk_akj Nybegynder
16. maj 2002 - 14:43 #6
Kan du ikke bare checke på I istedet ??
Avatar billede skovtrold Nybegynder
16. maj 2002 - 14:43 #7
OK - ja, jeg var lidt for hurtig - det kan jeg godt se.
Avatar billede Slettet bruger
16. maj 2002 - 14:44 #8
Søndag er lig 0 og derfor mente jeg at man skulle gøre det således:

var current = new Date();
dagsNavn = current.getDay();

for (i = 1; 32 > i; i++)
        {       
               
                if (dagsNavn == 0 )
                {
                    Response.write("<td align='center'>" + i + "</td></tr><tr>")
                    dagsNavn++;
                }

        Response.write("<td align='center'>" + i + "</td>");
        }
Avatar billede Slettet bruger
16. maj 2002 - 14:45 #9
"i" er jo dum og den ved ikke hvilken dag 1. maj f.eks. er ... Den tæller bare til 31...
Avatar billede c Nybegynder
17. maj 2002 - 15:27 #10
Jeg har et kalender skript, som virker... du må da gerne "låne" det (det er ikke mig der har skrevet det.)
Avatar billede Slettet bruger
17. maj 2002 - 16:54 #11
Jeg vil i hvert fald gerne kigge på det så længe det ikke er vbscript =)

Du kan bare sende det på lacops@lacops.dk og pointene er dine =)
Avatar billede c Nybegynder
21. maj 2002 - 11:59 #12
Jeg tror du kan få den i morgen...
Avatar billede c Nybegynder
08. juli 2002 - 16:36 #13
endelig her er den:

<!TITLE>Calendar with date and time<!/TITLE>
<!DESCRIPTION>Displays a calendar with the date highlighted and the time displayed.<!/DESCRIPTION>
<!CATEGORY>Calendar<!/CATEGORY>

<!--
Instant Scripts © Copyright 1999 Evrsoft. All rights reserved.
For legal/author information please visit http://www.evrsoft/iscripts/legal.html

Category
Calendar Scripts

Description
Displays a calendar with the date highlighted and the time displayed.

-->

<!-- START OF SCRIPT -->

<!-- JavaScript immediate script -->

<SCRIPT LANGUAGE="JavaScript">

<!--



// Copyright 1996 - Tomer and Yehuda Shiran

// This example will appear in our forthcoming book on JavaScript.

// Feel free to "steal" this code provided that you leave this notice as is.

// Additional examples from the book can be found at http://www.geocities.com/SiliconValley/9000/

// For more information contact Tomer or Yehuda Shiran <yshiran@iil.intel.com>



setCal()



function getTime() {



        // initialize time-related variables with current time settings

        var now = new Date()

        var hour = now.getHours()

        var minute = now.getMinutes()

        now = null

        var ampm = ""



        // validate hour values and set value of ampm

        if (hour >= 12) {

                hour -= 12

                ampm = "PM"

        } else

                ampm = "AM"

        hour = (hour == 0) ? 12 : hour



        // add zero digit to a one digit minute

        if (minute < 10)

                minute = "0" + minute // do not parse this number!



        // return time string

        return hour + ":" + minute + " " + ampm

}



function leapYear(year) {

        if (year % 4 == 0) // basic rule

                return true // is leap year

        /* else */ // else not needed when statement is "return"

                return false // is not leap year

}



function getDays(month, year) {

        // create array to hold number of days in each month

        var ar = new Array(12)

        ar[0] = 31 // January

        ar[1] = (leapYear(year)) ? 29 : 28 // February

        ar[2] = 31 // March

        ar[3] = 30 // April

        ar[4] = 31 // May

        ar[5] = 30 // June

        ar[6] = 31 // July

        ar[7] = 31 // August

        ar[8] = 30 // September

        ar[9] = 31 // October

        ar[10] = 30 // November

        ar[11] = 31 // December



        // return number of days in the specified month (parameter)

        return ar[month]

}



function getMonthName(month) {

        // create array to hold name of each month

        var ar = new Array(12)

        ar[0] = "January"

        ar[1] = "February"



        ar[2] = "March"

        ar[3] = "April"



        ar[4] = "May"

        ar[5] = "June"

        ar[6] = "July"

        ar[7] = "August"

        ar[8] = "September"

        ar[9] = "October"

        ar[10] = "November"

        ar[11] = "December"



        // return name of specified month (parameter)

        return ar[month]

}



function setCal() {

        // standard time attributes

        var now = new Date()

        var year = now.getYear()

        var month = now.getMonth()

        var monthName = getMonthName(month)

        var date = now.getDate()

        now = null



        // create instance of first day of month, and extract the day on which it occurs

        var firstDayInstance = new Date(year, month, 1)

        var firstDay = firstDayInstance.getDay()

        firstDayInstance = null



        // number of days in current month

        var days = getDays(month, year)



        // call function to draw calendar

        drawCal(firstDay + 1, days, date, monthName, 1900 + year)

}



function drawCal(firstDay, lastDate, date, monthName, year) {

        // constant table settings

        var headerHeight = 50 // height of the table's header cell

        var border = 2 // 3D height of table's border

        var cellspacing = 4 // width of table's border

        var headerColor = "midnightblue" // color of table's header

        var headerSize = "+3" // size of tables header font

        var colWidth = 60 // width of columns in table

        var dayCellHeight = 25 // height of cells containing days of the week

        var dayColor = "darkblue" // color of font representing week days

        var cellHeight = 40 // height of cells representing dates in the calendar

        var todayColor = "red" // color specifying today's date in the calendar



        var timeColor = "purple" // color of font representing current time



        // create basic table structure

        var text = "" // initialize accumulative variable to empty string

        text += '<CENTER>'

        text += '<TABLE BORDER=' + border + ' CELLSPACING=' + cellspacing + '>' // table settings

        text +=        '<TH COLSPAN=7 HEIGHT=' + headerHeight + '>' // create table header cell

        text +=                '<FONT COLOR="' + headerColor + '" SIZE=' + headerSize + '>' // set font for table header

        text +=                        monthName + ' ' + year

        text +=                '</FONT>' // close table header's font settings

        text +=        '</TH>' // close header cell



        // variables to hold constant settings

        var openCol = '<TD WIDTH=' + colWidth + ' HEIGHT=' + dayCellHeight + '>'

        openCol += '<FONT COLOR="' + dayColor + '">'

        var closeCol = '</FONT></TD>'



        // create array of abbreviated day names

        var weekDay = new Array(7)

        weekDay[0] = "Sun"



        weekDay[1] = "Mon"

        weekDay[2] = "Tues"

        weekDay[3] = "Wed"

        weekDay[4] = "Thu"

        weekDay[5] = "Fri"

        weekDay[6] = "Sat"

       

        // create first row of table to set column width and specify week day

        text += '<TR ALIGN="center" VALIGN="center">'

        for (var dayNum = 0; dayNum < 7; ++dayNum) {

                text += openCol + weekDay[dayNum] + closeCol

        }

        text += '</TR>'

       

        // declaration and initialization of two variables to help with tables

        var digit = 1

        var curCell = 1

       

        for (var row = 1; row <= Math.ceil((lastDate + firstDay - 1) / 7); ++row) {

                text += '<TR ALIGN="right" VALIGN="top">'

                for (var col = 1; col <= 7; ++col) {

                        if (digit > lastDate)

                                break

                        if (curCell < firstDay) {

                                text += '<TD></TD>';

                                curCell++

                        } else {

                                if (digit == date) { // current cell represent today's date

                                        text += '<TD HEIGHT=' + cellHeight + '>'

                                        text += '<FONT COLOR="' + todayColor + '">'

                                        text += digit

                                        text += '</FONT><BR>'

                                        text += '<FONT COLOR="' + timeColor + '" SIZE=2>'

                                        text += '<CENTER>' + getTime() + '</CENTER>'



                                        text += '</FONT>'

                                        text += '</TD>'

                                } else

                                        text += '<TD HEIGHT=' + cellHeight + '>' + digit + '</TD>'

                                digit++

                        }

                }

                text += '</TR>'

        }

       

        // close all basic table tags

        text += '</TABLE>'

        text += '</CENTER>'



        // print accumulative HTML string

        document.write(text)

}



// -->

</SCRIPT>
<!-- END OF SCRIPT -->


ked af at det tog så lang tid. ;-((

mvh
Christian
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester