热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

javascript–如何自动格式化文本框输入

Birthdate






好吧,我的代码正在运行,但我希望我的“输入类型文本”自动格式化为日期(html 5输入类型=日期),因为在我的Servlet中我将其转换为Age.
问题是,如果我使用“输入类型=日期”,转换是错误的,所以我决定使用“输入类型=文本”,它正在工作.那么可以自动将“/”设置为“mm / dd / yyyy”格式吗?例如,如果用户输入2个字符,则“/”将自动输入等.

出生日期的Servlet

String birthdate = request.getParameter("birthdate");
int mOnthDOB= Integer.parseInt(birthdate.substring(0, 2));
int dayDOB = Integer.parseInt(birthdate.substring(3, 5));
int yearDOB = Integer.parseInt(birthdate.substring(6, 10));
DateFormat dateFormat = new SimpleDateFormat("MM");
java.util.Date date = new java.util.Date();
int thisMOnth= Integer.parseInt(dateFormat.format(date));
dateFormat = new SimpleDateFormat("dd");
date = new java.util.Date();
int thisDay = Integer.parseInt(dateFormat.format(date));
dateFormat = new SimpleDateFormat("YYYY");
date = new java.util.Date();
int thisYear = Integer.parseInt(dateFormat.format(date));
int calAge = thisYear - yearDOB;
if (thisMonth calAge = calAge - 1;
}
if (thisMOnth== monthDOB && thisDay calAge = calAge - 1;
}
String age = Integer.toString(calAge);

在表单中更新






在源中更新


添加脚本


我也尝试过Javascript,但它不起作用……

解决方法:

使用来自jquery的datepicker api
这是链接Datepicker

这是工作代码






编辑

$("input[name='birthdate']:first").keyup(function(e){
var key=String.fromCharCode(e.keyCode);
if(!(key>=0&&key<=9))$(this).val($(this).val().substr(0,$(this).val().length-1));
var value=$(this).val();
if(value.length==2||value.length==5)$(this).val($(this).val()+'/');
});

这是您可能需要的代码

这是fiddled code


推荐阅读
author-avatar
书友53034809
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有