try
--------------------------
<input type="text" id="text1">
<input type="button" value="check" onclick="alert(cDate(text1.value));">
<script language="javascript">function cDate(value){
if(!/\d{1,2}-\d{1,2}-\d{1,4}/.test(value))
return "错误的日期格式";
var arr = value.split("-");
var year = arr[2]*1>2000?arr[2]:arr[2]*1+2000;
return year + "年" + arr[1] + "月" + arr[0] + "日";
}</script>
--------------------------
<input type="text" id="text1">
<input type="button" value="check" onclick="alert(cDate(text1.value));">
<script language="javascript">function cDate(value){
if(!/\d{1,2}-\d{1,2}-\d{1,4}/.test(value))
return "错误的日期格式";
var arr = value.split("-");
var year = arr[2]*1>2000?arr[2]:arr[2]*1+2000;
return year + "年" + arr[1] + "月" + arr[0] + "日";
}</script>
解决方案 »
- js replace
- 关闭模态对话框后IE内存未完全释放
- 求教innerHTML如何不覆盖
- 推荐几款javaScript的调试工具
- JScript编写的“CSDN全自动灌水机” 大家多批评
- window.location.herf如何带参数传递
- 能不能用window.open(""打开客户端文件,前面总跟服务器IP
- ???怎样在模态窗口控控制父窗口的一个TD的背景色
- 用JavaScript怎样关闭浏览器窗口才能确保不弹出"你是否要关闭该窗口"的确认框呢?
- 在javascript中如何将session的值传递?
- AJAX加载数据问题!
- 我的一个div是用的相对位置relative,现在想在程序中知道它在浏览器中是实际位置坐标,用什么方法啊?
是的
to leohuang(LEO)
谢谢帮助~不过~有点问题。1.年份 96 -> 1996
2.日期可以超过当月最大日期。比如可以输入 2月50日
<input type="text" id="text1">
<input type="button" value="check" onclick="alert(cDate(text1.value));">
<script language="javascript">function cDate(value){
if(!/(((1|2)[0-9])|3[01])-((0?[1-9])|1[0-2])-\d{1,4}/.test(value))
return "错误的日期格式";
var arr = value.split("-");
var year = arr[2]*1>2000?arr[2]:arr[2]*1+2000;
return year + "年" + arr[1] + "月" + arr[0] + "日";
}</script>
好像不行~:(
---------------------------------------------------------------------------
<input type="text" id="text1">
<input type="button" value="check" onclick="alert(cDate(text1.value));"><script language="javascript">
String.prototype.isDate=function(){
return /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$/.test(this);
}String.prototype.trim = function() {
return this.replace(/(^\s*)|(\s*$)/g,"");
}function cDate(value){
value=value.trim();
if(!/\d{1,2}-\d{1,2}-\d{1,4}/.test(value))
return "错误的日期格式";
var arr = value.split("-");
var year=arr[2];
switch(arr[2].length){
case 1:
case 2:
if(arr[2]*1>30)
year=arr[2]*1+1900;
else
year=arr[2]*1+2000;
break;
case 3:
year="1" + arr[2];
break;
}
var date = year + "-" + arr[1] + "-" + arr[0];
if(!date.isDate())
return "错误的日期格式";
else
return date;
}
</script>
thx! 结贴~