Month Picker

How would i wirte a calendar that looks just like a normal date picker calander but instead of days you pick the month.  So i have teh year at the top (which u can scroll) and the months undernether and you pick teh month and it returns it to the text box
JoanaAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
Lord_McFlyConnect With a Mentor Commented:
Ok - my slightly updates version - hope its ok - the year is in a listbox (it goes back 5 year and forward 5 years)...

TheForm.htm ==================================================================================================================
<html>
<head>
<title>The Form</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF">

<form name="Month" method="post" action="TheForm.htm">
      <input type="text" name="f_0" value="" maxlength="2" size="5">
      [<a href="javascript: void(0)" onClick="window.open('Month.htm','Month','width=250,height=130'); return false">Month</a>]
</form>
</body>
</html>
===========================================================================================================================

Month.htm ====================================================================================================================
<html>
<head>
<title>Month</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function PostBack(Month)
      {
            window.opener.document.Month.f_0.value=Month + "/" + document.Selection.YearList.options[document.Selection.YearList.selectedIndex].value;
            window.close()
      }
      
function FillYears()
      {
            var i
            var date = new Date()
            
            for (i=-5; i<=5; i++)
                  {
                        document.Selection.YearList.options[i+5] = new Option();
                        document.Selection.YearList.options[i+5].value = date.getFullYear() + i;
                        document.Selection.YearList.options[i+5].text = date.getFullYear() + i;
                        
                        if(i==5) document.Selection.YearList.selectedIndex = i
                  }
      }
//-->
</script>
</head>
<body onLoad="FillYears()" bgcolor="#FFFFFF" leftmargin="5" topmargin="5">
<table width="240" cellspacing="0" cellpadding="1" border="1">
      <form name="Selection" method="post" action="">
            <tr>
                  <td colspan="4" align="center">Y e a r / M o n t h</td>
            </tr>
            <tr>
                  <td colspan="4" align="center">
                        <select name="YearList">
                        </select>
                  </td>
            </tr>
            <tr>
                  <td width="40" height="20" align="center"><a href="javascript:void(0)" onClick="PostBack(1)">1</a></td>
                  <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(2)">2</a></td>
                  <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(3)">3</a></td>
                  <td width="40" height="20" align="center"><a href="javascript:void(0)" onClick="PostBack(4)">4</a></td>
            </tr>
            <tr>
                  <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(5)">5</a></td>
                  <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(6)">6</a></td>
                  <td width="40" height="20" align="center"><a href="javascript:void(0)" onClick="PostBack(7)">7</a></td>
                  <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(8)">8</a></td>
            </tr>
            <tr>
                  <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(9)">9</a></td>
                  <td width="40" height="20" align="center"><a href="javascript:void(0)" onClick="PostBack(10)">10</a></td>
                  <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(11)">11</a></td>
                  <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(12)">12</a></td>
            </tr>
      </form>
</table>
</body>
</html>
===========================================================================================================================
0
 
Lord_McFlyCommented:
I quickly whipped up a month picker - I didn't include the year selection because there is 12 months in every year.

So heres my effort...

TheForm.htm ==================================================================================================================
<html>
<head>
<title>The Form</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF">

<form name="Month" method="post" action="TheForm.htm">
      <input type="text" name="f_0" value="" maxlength="2" size="3">
      [<a href="javascript: void(0)" onClick="window.open('Month.htm','Month','width=250,height=105'); return false">Month</a>]
</form>
</body>
</html>
===========================================================================================================================

Month.htm ====================================================================================================================
<html>
<head>
<title>Month</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function PostBack(Month)
      {
            window.opener.document.Month.f_0.value=Month;
            window.close()
      }
//-->
</script>
</head>
<body bgcolor="#FFFFFF" leftmargin="5" topmargin="5">
<table width="240" cellspacing="0" cellpadding="1" border="1">
      <tr>
            <td colspan="4" align="center">Select Month</td>
      </tr>
      <tr>
            <td width="40" height="20" align="center"><a href="javascript:void(0)" onClick="PostBack(1)">1</a></td>
            <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(2)">2</a></td>
            <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(3)">3</a></td>
            <td width="40" height="20" align="center"><a href="javascript:void(0)" onClick="PostBack(4)">4</a></td>
      </tr>
      <tr>
            <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(5)">5</a></td>
            <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(6)">6</a></td>
            <td width="40" height="20" align="center"><a href="javascript:void(0)" onClick="PostBack(7)">7</a></td>
            <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(8)">8</a></td>
      </tr>
      <tr>
            <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(9)">9</a></td>
            <td width="40" height="20" align="center"><a href="javascript:void(0)" onClick="PostBack(10)">10</a></td>
            <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(11)">11</a></td>
            <td width="40" align="center"><a href="javascript:void(0)" onClick="PostBack(12)">12</a></td>
      </tr>
</table>
</body>
</html>
===========================================================================================================================
0
 
JoanaAuthor Commented:
hiya
that is almost exactly what i want but i still need the textbox at teh top that scrolls years as teh user has to select year and month
0
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

 
Lord_McFlyCommented:
Is the year passed back to the main form?
0
 
JoanaAuthor Commented:
yip so the text box would have 4/2004 :-)
0
 
JoanaAuthor Commented:
Perfect :-)
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.