29. april 2001 - 17:26Der er
6 kommentarer og 1 løsning
Mangler dansk pop-up kalender der smider valgt dato ned en form
Hej
Jeg står lige og mangler en pop-up kalender der, når man klikker på datoen, smider datoen ned i et tekstfelt på den underliggende side. Når kalenderen pop\'er op, så skal måneden være den aktuelle.
Man skal selvfølgelig også kunne klikke sig frem i månederne.
Kan du bruge sådan noget til at arbejde videre med ?
<SCRIPT LANGUAGE=\"JavaScript\">
<!-- Hide
// define variables
var month_names = new Array(\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"); var days_in_month = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); var this_date = new Date(); // get todays date var this_day = this_date.getDate(); // returns date within month - range 1-31 var this_month = this_date.getMonth(); // returns month within year - range 0-11
function makeCalendar(the_month, the_year) { first_of_month = new Date(the_year, the_month, 1); // creates instance of date object for first of month day_of_week = first_of_month.getDay(); // returns day within week - range 0-6 if (((the_year % 4 == 0) && (the_year % 100 != 0)) || (the_year % 400 == 0)) { days_in_month[1] = 29; // it\'s a leap year so change # days in Feb in array } else { days_in_month[1] = 28; // not leap year - future use if multi year calendar built } document.write(\"<TABLE CALLSPACING=0 CELLPADDING=0>\"); // start building the month table document.write(\"<TR BGCOLOR=\'#FFCC99\'><TH COLSPAN=7>\" + month_names[the_month] + \" \" + the_year); // month and year heading document.write(\"<TR BGCOLOR=\'#FF8888\'><TH>S</TH><TH>M</TH><TH>T</TH><TH>W</TH><TH>T</TH><TH>F</TH><TH>S</TH></TR>\"); // day of week heading document.write(\"<TR ALIGN=RIGHT>\"); var column = 0; for (i=0; i<day_of_week; i++) // skip to day_of_week value for first_of_month { document.write(\"<TD> </TD>\"); column++; } for (i=1; i<=days_in_month[the_month]; i++) { if ((i == this_day) && (the_month == this_month) && (the_year == this_year)) { document.write(\"<TD BGCOLOR=\'#CC0000\'><B>\" + i + \"</B></TD>\"); // highlite todays date } else { document.write(\"<TD BGCOLOR=\'#33CCFF\'><B>\" + i + \"</B></TD>\"); // no highlite for other dates } column++; if (column == 7) // start next row of dates for month { document.write(\"</TR><TR ALIGN=RIGHT>\"); column = 0; } } document.write(\"</TR></TABLE>\"); // month complete - close table }
function y2K(number) // if year < 2000 javascript gives only 2 digits for year { return (number < 1000) ? number + 1900 : number; }
var this_year = y2K(this_date.getYear()); // -->
</SCRIPT>
Put the following code between the BODY tags.
<SCRIPT LANGUAGE=\"JavaScript\">
<!--
document.write(\"<TABLE BORDER=\'1\'><TR VALIGN=TOP><TD>\"); makeCalendar(0, this_year); // we are passing the month and year to build the calendar document.write(\"</TD><TD>\"); // in JavaScipt the first month is 0 makeCalendar(1, this_year); document.write(\"</TD><TD>\"); makeCalendar(2, this_year); document.write(\"</TD><TD>\"); makeCalendar(3, this_year); document.write(\"</TD></TR><TR VALIGN=TOP><TD>\"); makeCalendar(4, this_year); document.write(\"</TD><TD>\"); makeCalendar(5, this_year); document.write(\"</TD><TD>\"); makeCalendar(6, this_year); document.write(\"</TD><TD>\"); makeCalendar(7, this_year); document.write(\"</TD></TR><TR VALIGN=TOP><TD>\"); makeCalendar(8, this_year); document.write(\"</TD><TD>\"); makeCalendar(9, this_year); document.write(\"</TD><TD>\"); makeCalendar(10, this_year); document.write(\"</TD><TD>\"); makeCalendar(11, this_year); document.write(\"</TD></TR></TABLE>\"); document.close();
Hvilket ad de mange mulige datoformater ønsker du den skal anvede. i popopvinduet hvor der vælges? i den tekststreng der skrives i formen? fx kan idag skrives som: søndag 29 april 2001 18:55:00 søndag 29 april 2001 29 april 2001 18:55:00 29 april 2001 søndag april 29 2001 18:55:00 april 29 2001 18:55:00 29-04-2001 29/04-01 29/04/2001 ... osv osv osv.
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.