JS判断文本框输入值,并给出提示(不用jQuery实现)
1)界面:给出一个文本框,给出一个按钮;
2)功能:当文本框输入为空时,给出当前的年月日(格式为:20120920)
当文本框输入为某值时,输出该值(值定义为8位数字,如:12345678)
3)功能:判断若该值大于当前日期数值,弹出提示:大了
若该值小于当前日期数值,弹出提示:小了
若该值等于当前日期数值,弹出提示:正好
注:小弟1、2步都可以袜,在第3步时思考几日,不太明白,请高手指点,谢谢了。
不用jQuery实现,单个html页面即可调试的,多谢。
[解决办法]
int a = Integer,parseInt(年月日)
int b = Integer,parseInt(document.form class名.文本框名.value)
if(a<b){
alert("小了");
}slse if(a>b){
alert("大了");
}else{
alert("正好");
}
[解决办法]
<script type="text/javascript">
function test(a){
var x=a.value;
var d=new Date(2012,8,21);
if(x==""){
a.value=20120821;
}else{
alert(m+" "+n+" "+k);
var y=new Date(+x.substring(0,4),(+x.substring(4,6))-1,+x.substring(6),0,0,0);
var z=d.getTime();
var m=y.getTime();
if(z>m){
a.value="小了";
}else if(z<m){
a.value="大了";
}else{
a.value="正好";
}
}
}
</script>
</head>
<body>
<input type="text" onblur="test(this)">
</body>
</html>
说下 因为newDate().getTime()是精确到毫秒的 而你给的时间只到天 所以很难正好 你可以在获得当前时间后截取到天后在比较试试
[解决办法]
额 你这不是日期 咋能输入12345678这种?不做日期判断?
[解决办法]
应该是没有输入值直接点按钮,输入框输出当前日期如:20120909
当输入数字不够8位时,提醒必须输入8位数,
当够了8位数时,第一步是判断这8位数是不是合法日期,总不能把99999999当日期比较吧。
当输入是8位日期格式时,直接比数字大小即可(没必要再换回日期比较了)
- HTML code
日期: <input type="text" id="dd" maxlength="8" size="10"/> <input type="button" onclick="test()" value="确定" /><script type="text/javascript"> function test(){ var v=document.getElementById("dd").value; if(v==""){ document.getElementById("dd").value=get_date(""); }else if(v.length!=8){ alert("请输入8位数!"); }else if(!get_date(v)){ alert("你输入的日期有误!") }else{ var i=get_date(""); if(v>i){ alert("大了"); }else if(v<i){ alert("小了"); }else{ alert("正好"); } } } function get_date(v){ //功能:1.返回当前日期;2.判断是不是有效日期; var t = new Date(); if(v!="")t = new Date(v.substring(0,4),v.substring(4,6)-1,v.substring(6,8)); var sj= t.getFullYear()+("0"+(t.getMonth()+1)).slice(-2)+("0"+t.getDate()).slice(-2); if(v!=""){ return v==sj; }else{ return sj; } }</script>
[解决办法]
4楼正解 每天回帖即可获得10分可用分!小技巧:教您如何更快获得可用分