怎样才能使文本框输入的是日期类型!!请各位帮帮忙

humin1906 2003-10-10 10:51:39
怎样才能使文本框输入的是日期类型!!就是只能输入日期类型的数字 或者判断输入的是否是日期类型
请各位帮帮忙,谢谢!!
...全文
140 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
bullion 2003-10-11
  • 打赏
  • 举报
回复
建议用下拉菜单
dafei0320 2003-10-11
  • 打赏
  • 举报
回复
isdate()
就用一个这个函数就好了--
zhanghao5188 2003-10-11
  • 打赏
  • 举报
回复
IsNumeric() ' 判断是不是为数字

isdate() ‘判断是否为日期/时间型
goldme76 2003-10-11
  • 打赏
  • 举报
回复
用下拉日期来选择
也可以做一个JS文件,让JS来判断是否来日期型数据,
JS我没试过,下拉日期列表我这都有一个
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80">
<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
<title>万年历</title>
<script language="JavaScript">
<!--
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->

//-->
</script>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
var i,p,v,obj,args=MM_showHideLayers.arguments;
for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
obj.visibility=v; }
}
//-->
</script>
</head>

<body bgcolor="#FFFFFF">

<div id="menu1" onClick="MM_showHideLayers('menu1','','hide')" style="position:absolute; left:440px; top:92px; width:288px; height:190px; z-index:1; visibility: hidden;">
<object id="calRl" name="calRl"
classid="clsid:8E27C92B-1264-101C-8A2F-040224009C02"
align="baseline" border="0" width="288" height="192">
</object>
</div>
<p align="center"><font size="6" face="黑体">万 年 历</font></p>
<div align="center"><center>

<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td>  </td>
<td>     </td>
<td>
<p align="center"> </p>

</td>
</tr>
</table>
<input name="rl" type="text" id="rl" size="18">

<input onClick="MM_showHideLayers('menu1','','show')" type="submit" name="Submit" value="提交">

</center></div>
<p><script language="VBScript"><!--
dim year
dim month
dim day

sub window_onload()
year=cstr(calRl.year)
month=cstr(calRl.month)
day=cstr(calRl.day)
rl.value=cstr(calRl.year)+"-"+cstr(calRl.month)+"-"+cstr(calRl.day)
end sub

sub calRl_Newyear()
year=cstr(calRl.year)
end sub

sub calRl_Newmonth()
Month=cstr(calRl.month)
end sub

sub calRl_Newday()
day=cstr(calRl.day)
end sub

sub menu1_onClick()
call window_onload()
end sub
--></script></p>
</body>
</html>


mflove 2003-10-10
  • 打赏
  • 举报
回复
NO.1:
先对rs做个判断:
if rs.recordcount=0 then
c_num='常值'
else
c_num=trim(rs("c_num"))
end if

448,也许行得通……


NO.2:
楼上slumcherry的不错,偶用过,对输入值做判断!
给我一个信箱,给你一个好用的控件,有兴趣,可以44
1蓝天1 2003-10-10
  • 打赏
  • 举报
回复
你可以选择时间,这样不就不用输了吗
然后自己组合在一起再转成(用cdate()转换)时间日期不就行了吗
不老书生 2003-10-10
  • 打赏
  • 举报
回复
trim是争对字符串的,null不行!

那样的日期类型?2003-09-10吗?
按字符长度(10个)判断一下,如果不是很严密的话?可以把字段设为日期行的,否则他乱输的话就插不进去!

实在想很严格的话,那就自己写个函数判断吧!
slumcherry 2003-10-10
  • 打赏
  • 举报
回复
提示什么错误?
trim(null)的返回值是null.
***********************************************************

<html>
<head>
<title>入库记录查询 </title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="CssLib/TOOLBARS.CSS" rel="stylesheet" type="text/css">
<script language="javascript">
<!--
function validate()
{
var t=0
var c, d, e,f,g,h

c=parseInt(document.form1.s_year.value)
d=parseInt(document.form1.s_month.value)
e=parseInt(document.form1.s_day.value)
f=parseInt(document.form1.e_year.value)
g=parseInt(document.form1.e_month.value)
h=parseInt(document.form1.e_day.value)

//*********************查询时,年月日要么都填,要么都不填,不能只填写其中一项进行查询.******************

if ((document.form1 .s_year .value =="" || document.form1 .s_month .value =="" || document.form1 .s_day .value =="" || document.form1 .e_year .value =="" || document.form1 .e_month .value =="" || document.form1 .e_day .value =="") && (document.form1 .s_year .value !="" || document.form1 .s_month .value !="" || document.form1.s_day .value !="" || document.form1 .e_year .value !="" || document.form1 .e_month .value !="" || document.form1 .e_day .value !="") && (t!=1))
{
alert("年月日填写不完整!")
t=1
}

//**********************************************************************************************************

if (document.form1.s_year.value!="" && document.form1 .s_month .value !="" && document.form1 .s_day .value !="" && document.form1.e_year.value!="" && document.form1 .e_month .value !="" && document.form1 .e_day .value !="" && t!=1)
{
if (t!=1 && (c>3000 || c<1000 ))
{
window.alert( "起始年超出范围")
t=1

}
if (t!=1 && (d>12 || d<1))
{
window.alert( "起始月超出范围")
t=1

}
if (t!=1 && ( e>31 || e<1))
{
window.alert( "起始日超出范围")
t=1

}
if (t!=1 && (f>3000 || f<1000 ))
{
window.alert( "结束年超出范围")
t=1

}
if (t!=1 && (g>12 || g<1))
{
window.alert( "结束月超出范围")
t=1

}
if (t!=1 && ( h>31 || h<1))
{
window.alert( "结束日超出范围")
t=1

}
}


if (t!=1)
{
document.form1 .method ="post"
document.form1.action=""
document.form1.submit()
}
}
//-->
</script>
</head>

<body bgcolor="#deebff" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<br>
<table width="80%" border="0" align="center" cellpadding="2" cellspacing="0">
<tr>
<td> <div align="center"><strong>入库记录查询 </strong> </div>
<div align="center"></div></td>
</tr>
</table>
<form name="form1">
<div align="center">
<table width="51%" height="203" border="1" cellpadding="2" cellspacing="0">
<tr>
<td><div align="center">
<select name="bh" >
<option value="1">物资名称</option>
<option value="2">规格型号</option>
</select>
</div></td>
<td><div align="center">
<input type="text" name="textfield">
</div></td>
</tr>
<tr>
<td><div align="center">入库人:</div></td>
<td><div align="center">
<input type="text" name="psnname">
</div></td>
</tr>
<tr>
<td><div align="center">入库日期:</div></td>
<td><div align="center">从
<input name="s_year" type="text" size="4" maxlength="4">

<input name="s_month" type="text" size="2" maxlength="2">

<input name="s_day" type="text" size="2" maxlength="2">
日 </div></td>
<td><div align="center">到
<input name="e_year" type="text" size="4" maxlength="4">

<input name="e_month" type="text" size="2" maxlength="2">

<input name="e_day" type="text" size="2" maxlength="2">
日 </div></td>
</tr>
</table>
<br>
<table width="148" height="42" border="0" cellpadding="2" cellspacing="0">
<tr>
<td><div align="center">
<input type="button" name="button1" value="查询" onclick="validate()">
</div></td>
<td><div align="center">
<input type="reset" name="cancel" value="取消">
</div></td>
</tr>
</table>
</div>
</form>

<script language="JavaScript">
<!--
if (document.layers)
document.captureEvents(event.KeyPress);
function blockA(e) {
if (document.layers)
var keyChar =e.which;
if (document.all)
var keyChar =event.keyCode;
if (keyChar>57 || keyChar<48)
{
alert('请输入数字!');
return false;
}
}
document.form1.s_year.onkeypress = blockA;
document.form1.s_month.onkeypress = blockA;
document.form1.s_day.onkeypress = blockA;
document.form1.e_year.onkeypress = blockA;
document.form1.e_month.onkeypress = blockA;
document.form1.e_day.onkeypress = blockA;
//-->
</script>

</body>
</html>
pp4u 2003-10-10
  • 打赏
  • 举报
回复
判断cdate(str)是否成功
humin1906 2003-10-10
  • 打赏
  • 举报
回复
这里也有个小问题,还请看一下,
sql="select * from sale_record order by c_num desc"
rs.open sql,conn,3,3
c_num=trim(rs("c_num"))
查寻出来的c_num字段是没有记录的,也就是数据库现在没有记录,运行时
c_num=trim(rs("c_num")) (这句) 提示错误。是不是空值不能赋值的
sunshine217 2003-10-10
  • 打赏
  • 举报
回复
to : mflove(穷人日记)
能给我发一个你的日期型控件吗?我有同样的问题,所以需要这个。
我的邮箱是sunshine217@citiz.net
yaozhg 2003-10-10
  • 打赏
  • 举报
回复
在一个同学录程序里复给你的.byear和bmonth和bday分别是年月日,

'验证用户添入生日
if not IsNumeric(byear) then
response.redirect "error.asp?info=对不起,请您正确填写出生日期!"
end if

if not IsNumeric(bmonth) then
response.redirect "error.asp?info=对不起,请您正确填写出生日期!"
end if

if not IsNumeric(bday) then
response.redirect "error.asp?info=对不起,请您正确填写出生日期!"
end if
  • 打赏
  • 举报
回复
问题一:我有个好方法,可以用JS写个点击文本框就弹出的日历形式的东西,可以选择日期。
问题二:空记录要写做判断if rs.eof then ……
yaodayizi 2003-10-10
  • 打赏
  • 举报
回复
不用文本框,用选择框选择
zhobin 2003-10-10
  • 打赏
  • 举报
回复
recordset取的字段为null是可以先判断一下
if rs["id"]=null then
//是null
else

end if
slumcherry 2003-10-10
  • 打赏
  • 举报
回复
mflove:
能不能给我传一份: www.duhastfaust@netscape.net
slumcherry 2003-10-10
  • 打赏
  • 举报
回复
我觉得不应该在asp中进行判断,这样会加重服务器负载,能交给前台的何必让asp做呢?

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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