<form id=f>
年<SELECT id=s1 name=s1 onchange="vbs:aaa"></SELECT>
月<SELECT id=s2 name=s2 onchange="vbs:aaa"></SELECT>
日<SELECT id=s3 name=s3></SELECT>
</form>
<SCRIPT LANGUAGE=vbscript>
'初始年
MyAdd "f.s1",1970,2050
'初始月
MyAdd "f.s2",1,12
'初始日
MyAdd "f.s3",1,31
sub MyAdd(S,x,y)'增加
set obj=eval(S)
for i=x to y
set o=document.createElement("OPTION")
o.text=i
o.value=i
obj.add o
next
end sub
sub MyRemove(S)'删除
set obj=eval(S)
for each opt in obj.options
obj.remove  opt.index
next 
end sub
sub aaa'自定义过程,用来改变s3日期
dim mydate,maxdate
'先清空全部,最好从28号以后清空,但是这样效率低人感觉不到,偷点懒不是罪
MyRemove "f.s3"
for i=1 to 31
mydate=f.s1.value & "-" & f.s2.value & "-" & i
if isdate(mydate) then '判断是否是有效日期
maxdate=i
else
exit for
end if
next
MyAdd "f.s3",1,maxdate
end sub
</SCRIPT>

解决方案 »

  1.   

    <HTML>
    <HEAD>
    <style>
    .a
    {
    BORDER-RIGHT: lightblue 1px solid;
    BORDER-TOP: lightblue 1px solid;
    LEFT: 280px; 
    BORDER-LEFT: lightblue 1px solid;
    WIDTH: 100px; 
    BORDER-BOTTOM: lightblue 1px solid;
    POSITION:  absolute; 
    TOP:  37px; 
    HEIGHT: 24px;
    }
    .b
    {
    FONT-SIZE: 9px;
    BORDER-LEFT-COLOR:lightblue;
    LEFT: 358px; 
    BORDER-BOTTOM-COLOR: 
    lightblue; 
    WIDTH: 20px; 
    COLOR: mediumblue; 
    BORDER-TOP-STYLE: solid; 
    BORDER-TOP-COLOR: lightblue; 
    BORDER-RIGHT-STYLE: solid; 
    BORDER-LEFT-STYLE: solid; 
    POSITION: absolute; 
    TOP: 39px;
    HEIGHT: 20px; 
    BACKGROUND-COLOR: white; 
    BORDER-RIGHT-COLOR: lightblue;
    BORDER-BOTTOM-STYLE: solid; 
    FILTER: progid:DXImageTransform.Microsoft.Matrix(SizingMethod ='auto expand',FilterType=bilinear,Dx=0,Dy=0,M11=-1,M12=0,M21=0,M22=-1);
    }
    .c
    { LEFT: 280px; 
    WIDTH: 100px; 
    POSITION:  absolute; 
    TOP:  60px; 
    HEIGHT: 24px;
    display:none;
    cursor:pointer;
    }
    </style>
    </HEAD>
    <BODY>
    <INPUT id=select2  class="a">
    <INPUT type=button value="▲" class="b" onclick="ddd(this);" title=""> 
    <TABLE border="1" CELLPADDING=0 CELLSPACING=0 bordercolor="lightblue" class="c"  onclick="aaa(this);">
      <TR>
        <TD bordercolor="#FFFFFF"  onmouseover="bbb(this);"  onmouseout="ccc(this);" title="1">
    <img src="http://expert.csdn.net/expert/images/rank/star1.gif">1星
        </TD>
    </TR>
    <TR>

        <TD bordercolor="#FFFFFF"  onmouseover="bbb(this);"  onmouseout="ccc(this);" title="2">
    <img src="http://expert.csdn.net/expert/images/rank/star2.gif">2星
    </TD>
    </TR>
    <TR>

        <TD bordercolor="#FFFFFF" onmouseover="bbb(this);"  onmouseout="ccc(this);" title="3">
    <img src="http://expert.csdn.net/expert/images/rank/star3.gif">3星
        </TD>
    </TR>
    </TABLE><SCRIPT >
      function aaa(obj)
    {
    previousSibling(previousSibling(obj)).value= window.event.srcElement.innerText;
    previousSibling(previousSibling(obj)).title= window.event.srcElement.title;
    eee(obj);
    }
    function bbb(obj)

    obj.borderColor="#FF0000";
    }
    function ccc(obj)
    {
    obj.borderColor="#ffffff";
    }
    function ddd(obj)
    {
    nextSibling(obj).style.display="block";
    }
    function eee(obj)
    {
    obj.style.display="none";
    }
    function nextSibling(obj)
    {
    for(i=1;i<obj.document.all.length;i++)
    {
    if(obj==obj.document.all(i))
    {
    return(obj.document.all(i+1))
    }
    }
    }
    function previousSibling(obj)
    {
    for(i=1;i<obj.document.all.length;i++)
    {
    if(obj==obj.document.all(i))
    {
    return(obj.document.all(i-1))
    }
    }
    }
    </SCRIPT>
    </BODY></HTML>
      

  2.   

    <select onchange="alert(this.value)">
    <option value="1">item1
    <option value="2">item2
    <option value="3">item3
    </select>
      

  3.   

    onchange=函数名
    javascript中写函数