帮忙看一下option之间值比较的问题 在线等待!!

milanrain 2003-10-13 04:10:34
程序如下:

<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
<script language="JavaScript">
function checkDate()
{
if ((form1.startYear .value >form1.endYear.value) || ((form1.startYear .value == form1.endYear .value) && (form1.startMonth.value > form1.endMonth.value) && (form1.startMonth .length == 1 )&&(form1.endMonth .length ==1)) || ((form1.startYear .value == form1.endYear .value) && (form1.startMonth.value > form1.endMonth.value) && (form1.startMonth .length == 2 )&&(form1.endMonth .length ==2))){
window.alert("请注意输入的时间顺序!");
}
else
form1.submit() ;
}
</script>
</HEAD>
<BODY>
<form name=form1>
<TABLE WIDTH=600 cols = 2>
<tr>
<td width=300> </td>
<td width=300> </td>
</tr>
<TR>
<TD COLSPAN=2 align = center>
<b>请选择你要查询的类型:</b>
<SELECT id=select1 name=ctype>
<OPTION value="itype" selected>客户类型</OPTION>
<OPTION value="iclass">客户等级</OPTION>
<OPTION value="isalary">客户收入</OPTION>
</SELECT>
</TD>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD WIDTH=300 ALIGN=CENTER>
<b>开始时间:</b> <SELECT name=startYear>
<%for i = 2000 to 2100 %>
<OPTION value=<%=i%>><%=i%></OPTION>
<%next%>
</SELECT><B>年</B>
<SELECT name=startMonth>
<%for i = 1 to 12 %>
<OPTION value=<%=i%>><%=i%></OPTION>
<%next%>
</SELECT><B>月</B>
</TD>
<TD WIDTH=300 ALIGN=CENTER>
<b>结束时间:</b> <SELECT name=endYear>
<%for i = 2000 to 2100 %>
<OPTION value=<%=i%>><%=i%></OPTION>
<%next%>
</SELECT><B>年</B>
<SELECT name=endMonth>
<%for i = 1 to 12 %>
<OPTION value=<%=i%>><%=i%></OPTION>
<%next%>
</SELECT><B>月</B>
</TD>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
</TR>
<TR align=center>
<TD colspan=2><input type=button value="提交" onclick="checkDate()" id=button1 name=button1></TD>
</TR>
</TABLE>
</form>
</BODY>
</HTML>

按理说没有问题的阿 可是如果选择的是2000年5月 和 2000年11月的话
还是出现提示框! 说明是按着字符串比较进行的 就是说5和11的第一个1
比较 这样结果显然不对!怎么能当选择前面的情况 顺利提交表单呢 谢谢!
...全文
63 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
slumcherry 2003-10-13
  • 打赏
  • 举报
回复
一起努力吧.用不用给你个手册,把邮箱给我
milanrain 2003-10-13
  • 打赏
  • 举报
回复
一直在找这个函数!
谢拉!
milanrain 2003-10-13
  • 打赏
  • 举报
回复
谢谢啦! 我搞定拉!
slumcherry 2003-10-13
  • 打赏
  • 举报
回复
把字符型转换成整数在比较
milanrain 2003-10-13
  • 打赏
  • 举报
回复
能说的具体一点吗
slumcherry 2003-10-13
  • 打赏
  • 举报
回复
用parseInt()试试
milanrain 2003-10-13
  • 打赏
  • 举报
回复
不好意思 上面的那个太乱拉 脚本简单的写应该如下;

<script language="JavaScript">
function checkDate()
{

if ((form1.startYear .value >form1.endYear.value) || ((form1.startYear .value == form1.endYear .value) && (form1.startMonth .value >form1.endMonth .value))){
window.alert("请注意输入的时间顺序!");
}

else
form1.submit() ;
}
</script>

87,988

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧