dropdownlist的问题求教。 而输入2003应立刻变为1-28.如何在每次循环前清掉StartDay中的所有值。 通过设置innerHTML为空即可。StartMonth.innerHTML=""; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我觉得你的算法不好,首先1-28号肯定是存在的,如果年月变了,能否像个办法只改遍29-31。查插帮助,看有没有合适的remove之类的方法帮忙。 很简单的代码,没想到楼主写了这么长。看看我的:<INPUT name="StartYear" id="StartYear" type="text" size="4" maxLength="4" onchange="DC();"><SELECT name="StartMonth" id="StartMonth" onchange="DC()"><OPTION value="1" selected>1</OPTION><script language="JavaScript">for(i=2;i<=12;i++){document.write('<option value="'+i+'">'+i+'</option>')}</script></SELECT><SELECT name="StartDay" id="StartDay"><OPTION value="1" selected>1</OPTION><script language="JavaScript">for(i=2;i<=31;i++){document.write('<option value="'+i+'">'+i+'</option>')}</script></SELECT><script language="JavaScript">function DC(){ var objY = StartYear, objM = StartMonth, objD = StartDay; var y=parseInt(objY.value), m=parseInt(objM.value), d=parseInt(objD.value); if(isNaN(y) || isNaN(m) || isNaN(d)){return;} var oD=new Date(y,m-1,d); var h29=(new Date(y,m-1,29)).getDate()==29; var h30=(new Date(y,m-1,30)).getDate()==30; var h31=(new Date(y,m-1,31)).getDate()==31; var mx=h31 ? 31 : (h30 ? 30 : (h29 ? 29 : 28)); if(objD.length>mx){ objD.length=mx; objD.selectedIndex=mx-1; } while(objD.length<mx){ objD.options.add(new Option(objD.length+1,objD.length+1)); }}//下面是初始化StartYear.value="2004";StartMonth.value="3";StartDay.value="31";DC();</script> var oD=new Date(y,m-1,d); /// 这一行多余,测试用的,可删掉。 http://dev.csdn.net/develop/article/13/13781.shtm JQuery1.2.6升级到1.4.2的问题 一行显示的问题 图片点击问题 如何通过insertadjacenthtml增加<script src='http://**/test.js'></script> 关于弹窗问题 急问,关于js中窗体之间值传递的问题 用javascript链接打开文件错误,急, 动态改变文本的链接? 怎么写"点击超连接的右键是否也可以修改数据库"的JS程序 我要在网页中加入一个可以画图(曲线图,柱形图,K线图)的控件,请问各位大虾哪里有? 必给分! 判断文本区域中输入的字符串的个数 焦点移动问题?
如果年月变了,能否像个办法只改遍29-31。
查插帮助,看有没有合适的remove之类的方法帮忙。
<SELECT name="StartMonth" id="StartMonth" onchange="DC()">
<OPTION value="1" selected>1</OPTION>
<script language="JavaScript">
for(i=2;i<=12;i++){document.write('<option value="'+i+'">'+i+'</option>')}
</script>
</SELECT>
<SELECT name="StartDay" id="StartDay">
<OPTION value="1" selected>1</OPTION>
<script language="JavaScript">
for(i=2;i<=31;i++){document.write('<option value="'+i+'">'+i+'</option>')}
</script>
</SELECT>
<script language="JavaScript">
function DC(){
var objY = StartYear, objM = StartMonth, objD = StartDay;
var y=parseInt(objY.value), m=parseInt(objM.value), d=parseInt(objD.value);
if(isNaN(y) || isNaN(m) || isNaN(d)){return;}
var oD=new Date(y,m-1,d);
var h29=(new Date(y,m-1,29)).getDate()==29;
var h30=(new Date(y,m-1,30)).getDate()==30;
var h31=(new Date(y,m-1,31)).getDate()==31;
var mx=h31 ? 31 : (h30 ? 30 : (h29 ? 29 : 28));
if(objD.length>mx){
objD.length=mx;
objD.selectedIndex=mx-1;
}
while(objD.length<mx){
objD.options.add(new Option(objD.length+1,objD.length+1));
}
}
//下面是初始化
StartYear.value="2004";
StartMonth.value="3";
StartDay.value="31";
DC();
</script>