使用delphi的intraweb进行web编程,发现其文本框的日期格式只有dd-mm-yyyy格式。想在客户端用javascript设置文本输入框的输入格式为“yyyy-mm-dd”,即用户只以输入“yyyy”、“mm”、“dd”部分,中间的“-”自动产生。
解决方案 »
- 用chrome调试js的问题
- 无需刷新页面,使JS每隔一段时间更换显示内容,
- Jquery的一个问题
- ext grid 中得到当前分组的事件
- 高手解答,怎样在一个对象的旁边创建一个对象????
- ATGrid WEB报表控件打印插件
- 做的一个漂浮小广告引发的出的问题 希望有明白的能帮帮小弟
- 这样的字符串如何分割“0.9×0.45×0.012”
- 庆祝从百度黑名单中解除(可以搜索到本站),UP者有分。
- 我想在javascript中判断一下输入的数据是否是正数,且小数位最多只有两位
- 如何让onbeforeunload在执行完dwr代码后再关闭窗口?
- 用JS写了一个遍历文件夹获取每个文件信息的网页,但是点打开浏览对话框,选择路径时总提示“没有权限”,求高人指点
挺不错的一个日历控件....api详细...
<!--
function add(obj){
//获取文本框的长度
var length=obj.value.length;
//自动添加"-"
if((length==4||length==7)&&event.keyCode!=8){
obj.value=obj.value+'-';
}
}
//校验yyyy-MM-dd格式
function check(obj){
var patm=/^(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29)$/;
if(obj.value !="" && !patm.exec(obj.value)){
alert("格式有误,参照:yyyy-MM-dd !");
obj.focus();
obj.select();
}
}
//-->
</SCRIPT>
<table>
<tr>
<td><input type="text" name="t" maxlength="10" onkeyup="add(this)" onblur="check(this)"/></td>
</tr>
</table>
</body>
但是将代码分别拷入delphi输入框的OnKeyUp和Onblur时,判断日期长度不起作用。
<!--
function add(obj){
//获取文本框的长度
var length=obj.value.length;
//自动添加"-"
if((length==4||length==7)&&event.keyCode!=8){
obj.value=obj.value+'-';
}
}
//校验yyyy-MM-dd格式
function check(obj){
var patm=/^(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29)$/;
if(obj.value !="" && !patm.exec(obj.value)){
alert("格式有误,参照:yyyy-MM-dd !");
obj.focus();
obj.select();
}
}
//-->
</SCRIPT>
<table>
<tr>
<td><input type="text" name="t" maxlength="10" onkeyup="add(this)" onblur="check(this)"/></td>
</tr>
</table>
</body>
<!--
function add(obj){
//获取文本框的长度
var length=obj.value.length;
//自动添加"-"
if((length==4||length==7)&&event.keyCode!=8){
obj.value=obj.value+'-';
}
}
//校验yyyy-MM-dd格式
function check(obj){
var patm=/^(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29)$/;
if(obj.value !="" && !patm.exec(obj.value)){
alert("格式有误,参照:yyyy-MM-dd !");
obj.focus();
obj.select();
}
}
//-->
</SCRIPT>
<table>
<tr>
<td><input type="text" name="t" maxlength="10" onkeyup="add(this)" onblur="check(this)"/></td>
</tr>
</table>
</body>
怎么样