asp.net使用My97 Date Picker时设置默认起始时间为n年之前的今天
可以使用My97 Date Picker组件来收集用户输入的日期值。
首先下载该组件:http://www.my97.net/dp/index.asp放到自己的项目中。
然后在项目里面引用js和css文件,例如:
<script language="javascript" type="text/javascript" src="./My97DatePicker/WdatePicker.js"></script>
<link href="./My97DatePicker/skin/WdatePicker.css" rel="Stylesheet" type="text/css" />
当然,目录要写对。
然后在页面添加文本框:
<input class="Wdate" type="text" onclick="WdatePicker()" id="htmlTxtBirthday" runat="server" readonly="readonly" />
这里可以用asp.net的textbox,也可以使用html的文本框。


但是这个组件默认的起始日期是客户端的当前日期。有的时候需要用户输入的数据是生日,假如起始日期是当前日期,就要点击若干次找到相应的日期,稍有点麻烦。
查看了官网的文档,发现有解决办法:

但是从这个来看,似乎不够灵活。比如,有的时候我们预期的用户都是16岁左右,那么,可以考虑以当前日期往前推15年或16年作为起始日期。
<input class="Wdate" type="text" onclick="dt=new Date();y=dt.getFullYear()-15;dt2= y.toString() +'-'+ (dt.getMonth()+1)+'-'+dt.getDate(); WdatePicker({startDate:dt2})" id="htmlTxtBirthday" runat="server" readonly="readonly" />
这个地方设置的起始日期是15年前的今天。不过,假若今天是闰年2月29日,15年前没有2月29日,可能就错了。故可以考虑就以15年前的元旦作为起始日期。
<input class="Wdate" type="text" onclick="dt=new Date();y=dt.getFullYear()-15;dt2= y.toString() +'-'+ 1 +'-'+1; WdatePicker({startDate:dt2})" id="htmlTxtBirthday" runat="server" readonly="readonly" />
asp.net使用My97 Date Picker时设置默认起始时间为n年之前的今天的更多相关文章
- .NET DateTime类型变量作为参数时设置默认值
一个小的 Tips. .NET 中函数参数的默认值需要是编译时常量.如果参数是引用类型,可以设置Null,如果是值类型,可以设置相应的编译时常量,如整型可以用整数,但对于DateTime(结构体,值类 ...
- select2 插件编辑时设置默认值
function htDate(selectCustomerId, val) { var customerId = selectCustomerId; var values = val; ajaxJs ...
- Jackson将对象转换为json字符串时,设置默认的时间格式
maven需要的依赖: <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifac ...
- 【转载】mysql建表date类型不能设置默认值
如题,mysql建表date类型的不能设置一个默认值,比如我这样: CREATE TABLE `new_table` ( `biryhday` datetime NULL DEFAULT '1996- ...
- 001. 为input type=text 时设置默认值
1. 前端HTML代码 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Defa ...
- Hbuilder MUI 选择器(Picker)设置默认选项
mui 联动选择初始化很多人都遇到问题,就是setselectedvalue 不好用,实际上这个地方应该是有bug的 所以只能用setselectedindex 来实现 下面我是我的实现方式供大家参考 ...
- img图片不存在时设置默认图片
当在页面显示的时候,万一图片被移动了位置或者丢失的话,将会在页面显示一个带X的图片,很是影响用户的体验.即使使用alt属性给出了"图片XX"的提示信息,也起不了多大作用. 其实,可 ...
- Appium在没有收到下一个命令时,默认超时时间是60s,超时后应用将会自动关闭,如果有需要等待超过60s的场景,怎么处理?
DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("newCo ...
- Mysql 数据库date, datetime类型设置0000-00-00默认值(default)报错问题
Mysql 数据库date, datetime类型设置0000-00-00默认值报错问题 现象:MySQL5.7版本之后,date, datetime类型设置默认值"0000-00-00&q ...
随机推荐
- shiro 简单的身份验证 案例
Apache Shiro是Java的一个安全框架,Shiro可以帮助我们完成:认证.授权.加密.会话管理.与Web集成.缓存等. 简单的身份验证 项目目录: 首先,在shiro.ini里配置了用户名和 ...
- 初学者用div+css结构写网页的几个误区
1.用div+css结构制作静态html网页不等于彻底抛弃古老的table写法.之所以不建议用table来布局网页是因为在网页加载很慢的时候要等table结构加载完成才能看到网页,其次是table的布 ...
- mybatis-config.xml简单笔记
mybatis-config.xml简单笔记 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ...
- Android之获取string.xml文件里面的方法
获取string.xml文件里面的方法 在此做个笔记: 1.在AndroidManifest.xml与layout等xml文件里: android:text="@string/resourc ...
- redis 配置应用(摘)
Redis可以在没有配置文件的情况下通过内置的配置来启动,但是这种启动方式只适用于开发和测试. 合理的配置Redis的方式是提供一个Redis配置文件,这个文件通常叫做redis.conf. redi ...
- js检测浏览器屏幕宽度
使用javascript脚本编写的一个能检测浏览器屏幕的宽度,当改变浏览器屏幕大小时,输出的数值也会随之改变.
- js实现继承
js是门灵活的语言,实现一种功能往往有多种做法,ECMAScript没有明确的继承机制,而是通过模仿实现的,根据js语言的本身的特性,js实现继承有以下通用的几种方式1.使用对象冒充实现继承(该种实现 ...
- [最近公共祖先] POJ 3728 The merchant
The merchant Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 4556 Accepted: 1576 Desc ...
- 什么是 jsonp ?
浏览器不支持Ajax跨域请求 但能加载任何地方的外部js文件 jsonp就是借用这个特点 通过引入文件拿到想要的数据 而不是通过AJAX请求 假如你想获取 vcico.com 的 $data ...
- 用Firefox的debugger来调试JavaScript
1.自我感觉比firebug更好用 https://developer.mozilla.org/zh-CN/docs/Tools/Debugger