问一个日期的问题

wulinbazhu 2011-08-09 09:20:50
我要做两个下拉框第一个里放年,第二个放月,只能选择一年的时间
例如现在是七月份,年下拉框里只能是2010和2011,月下拉框里从去年的八月到现在的七月这十二个月,根据系统时间变化

谢谢哪位可以指点下
...全文
227 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
班门弄斧 2011-08-09
  • 打赏
  • 举报
回复
有时间写了一个楼主你要的,关键你先去自己下载一个WdatePicker日期控件

<html>
<head>

<title>test</title>
<script language="javascript" type="text/javascript" src="My97DatePicker/WdatePicker.js"></script>
</head>

<body>
年<input id="yy" type="text" onfocus="WdatePicker({minDate:'{%y-1}-%M-%d',maxDate:'%y-%M-%d',dateFmt:'yyyy'})"/>--
月<input id="m" type="text" onfocus="WdatePicker({minDate:'{%y-1}-%M-%d',maxDate:'%y-%M-%d',dateFmt:'M'})"/>
</body>
</html>
班门弄斧 2011-08-09
  • 打赏
  • 举报
回复
楼主可以通过My97DatePicker这个日期控件,设置好格式即可,如你的需求只需要设置为以下格式即可

onfocus="WdatePicker({minDate:'{%y-1}-%M-%d',maxDate:'%y-%M-%d'})"
班门弄斧 2011-08-09
  • 打赏
  • 举报
回复

<html>
<head>

<title>测试--只能选择之前一年之内的时间</title>
<script language="javascript" type="text/javascript" src="Ext/My97DatePicker/WdatePicker.js"></script>
</head>

<body>
<input class="Wdate" type="text" onfocus="WdatePicker({minDate:'{%y-1}-%M-%d',maxDate:'%y-%M-%d'})"/>
</body>
</html>
乌镇程序员 2011-08-09
  • 打赏
  • 举报
回复
这里取的是客户端时间,安全点的做法应该取服务器端时间,PHP版:
var d = new Date('<?php echo date("Y/m/d"); ?>');
如此疲惫 2011-08-09
  • 打赏
  • 举报
回复

结贴 给分
wulinbazhu 2011-08-09
  • 打赏
  • 举报
回复
兄弟刚学不会写 见笑
如此疲惫 2011-08-09
  • 打赏
  • 举报
回复
兄弟 你没发现 这里面不可能出现明年的,,,

你看2010年 最大是12月对不?那最近一年就是2010年(年下拉框就放2010)
其他的月份 比如11月 10月 5月 ,。,那最近一年的坑定是包含今年和去年了(2010 2009)

所以很简单啊 你判断月份只要是12月份 那就年下拉框写今年的年份就好了
如果是小于12月(不可能大于12吧 呵呵) 那就写今年和去年(年下拉框写)

月的下拉框 永远是1到12就好了
乌镇程序员 2011-08-09
  • 打赏
  • 举报
回复
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
window.onload = function() {
var d = new Date();
var y = d.getFullYear();
var YM = {};
var ar_m = [];
for (m = d.getMonth() + 1; m >= 1; m --) ar_m.push(m);
YM[y] = ar_m;
if(d.getMonth() != 11) {
y --;
ar_m = [];
for(var i = 11 - d.getMonth(), m = 12; i > 0; m --, i --) ar_m.push(m);
YM[y] = ar_m;
}
var opt_y = '';
var opt_m = '';

y = d.getFullYear();
for(var x in YM) {
opt_y += '<option value="' + x + '"';
if (x == y) opt_y += ' selected="selected"';
opt_y += '>' + x + '年' + '</option>';
}
for(var i = 0; i < YM[y].length; i ++) {
opt_m += '<option value="' + YM[y][i] + '"';
if (YM[y][i] - 1 == d.getMonth()) opt_m += ' selected="selected"';
opt_m += '>' + YM[y][i] + '月' + '</option>';
}

document.getElementById('y').innerHTML = opt_y;
document.getElementById('m').innerHTML = opt_m;

document.getElementById('y').onchange = function() {
var y = this.value;
var ar = YM[y];
var opt_m = '';
for(var i = 0; i < ar.length; i ++) opt_m += '<option value="' + ar[i] + '">' + ar[i] + '月' + '</option>';
document.getElementById('m').innerHTML = opt_m;
}
}
</script>
</head>

<body>
<select id="y"></select><select id="m"></select>
</body>
</html>
如此疲惫 2011-08-09
  • 打赏
  • 举报
回复
JS写还是asp.net控件?
wulinbazhu 2011-08-09
  • 打赏
  • 举报
回复
只能查询最近一年的数据,现在是2011年最近一年是从2010.8---2011.7这就是现在允许查询的日期,
月份吗可以从1到12无所谓了,兄弟们谁帮我谢谢啊
如此疲惫 2011-08-09
  • 打赏
  • 举报
回复
例如现在是七月份,年下拉框里只能是2010和2011,月下拉框里从去年的八月到现在的七月这十二个月,根据系统时间变化

楼主这段的逻辑是什么意思 2010年7月 年里面是2010和2011?只能出现今年和明年 是这个意思嘛(年里面只能包含今年和比当前年多一年这两个年份?是这个意思嘛?)

去年的八月到现在的七月
就是当前的月份向前推12个月(既然是12个月 那月的下拉框怎么变 也永远是 1月 2月 3月。。。这些啊 你的意思就是变革顺序么? 12月 11月 10月 、、、、、8月?这个意思嘛?)
MuBeiBei 2011-08-09
  • 打赏
  • 举报
回复
[Quote=引用楼主 wulinbazhu 的回复:]
我要做两个下拉框第一个里放年,第二个放月,只能选择一年的时间
例如现在是七月份,年下拉框里只能是2010和2011,月下拉框里从去年的八月到现在的七月这十二个月,根据系统时间变化

谢谢哪位可以指点下
[/Quote]

你可以用ajax直接从后台返回数据

或者在前台直接生成~·要是生成的话,就得根据你的需求进行判断了~·然后再生成
springforxsh 2011-08-09
  • 打赏
  • 举报
回复

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> 日期 </title>
<script type="text/javascript">
(function InitSelect(){
RequstObj = {
init : init,
changeMonth : changeMonth
}
//通过ID获得控制
function $(id){
return document.getElementById(id);
}

//往Select中添加Option选项
function addOption(val01,id){
for(var i = 0; i < val01.length; i++){
var option = document.createElement("option");
option.text = val01[i];
id.add(option);
}
}
var year;//存储年份
var month;//存储月份
//初始化
function init(){
var date = new Date();
year = date.getFullYear();
month = date.getMonth() + 1;
addOption([year-1,year],$("s_year"));
changeMonth();
}
//移除Select中的Option
function removeSelectOption(id){
for(var i=id.length - 1;i>-1;i--){
id.remove(i);
}
}
//通过年份改变相应的月份
function changeMonth(){
var y = $("s_year");
var monthes = [];
if(y.options[y.selectedIndex].text == year){
for(var i = 1,j = 0; i <= month; i++,j++){
monthes[j] = i;
}
}else if(y.options[y.selectedIndex].text == (year - 1)){
for(var i = month + 1,j=0; i <= 12; i++,j++){
monthes[j] = i;
}
}
var m = $("s_month");
removeSelectOption(m);
addOption(monthes,m);
}
})();
</script>
</head>

<body onload="RequstObj.init();">
<select id="s_year" onchange="RequstObj.changeMonth()"></select>
<select id="s_month"></select>
</body>
</html>
springforxsh 2011-08-09
  • 打赏
  • 举报
回复

roffer 2011-08-09
  • 打赏
  • 举报
回复
不用自己些代码,有一个现成的js日期控件,你在网上搜这个:My97DatePicker日期控件4.7

页面一个input标签,加上onClick="WdatePicker({dateFmt:'yyyy-MM-dd',readOnly:true,minDate:'%y-%M-%d',maxDate:'%y-{%M+12}-%d'})"
%y表示当前,%M表示当前月 ... %M+12表示明年的这个月份,可以查查这个日期控件的帮助文档
内容概要:本文围绕“单相逆变器闭环逆变电路PWM模型仿真研究”展开,基于Simulink平台构建单相逆变器的闭环控制系统仿真模型,重点研究PWM调制技术在逆变电路中的应用与实现。文中详细阐述了系统架构设计、电压电流双闭环控制策略的实现原理、控制器参数设计及仿真建模全过程,并通过仿真结果验证了控制方案在动态响应、稳态精度与系统稳定性方面的有效性。同时,文档还涵盖多种电力电子系统典型应用场景,如多类型短路故障仿真(中性点不接地、经小电阻接地、经消弧线圈接地等)、软开关技术、微电网能量管理、MPPT控制等,体现出较强的技术综合性和工程实践价值。; 适合人群:电气工程、自动化、电力电子与新能源等相关专业的高校本科生、研究生、科研人员,以及从事电力系统仿真、逆变器设计与新能源并网技术研发的工程技术人员。; 使用场景及目标:①掌握基于Simulink的单相逆变器闭环控制系统建模与PWM仿真方法;②深入理解双闭环控制、SPWM/SVPWM调制、系统稳定性分析等核心技术原理;③为课程设计、毕业设计、科研项目或实际工程开发提供可复用的仿真模型与技术支持; 阅读建议:建议结合文中仿真模型动手实践,重点掌握PI控制器参数整定、PWM信号生成机制与仿真结果分析方法,同时可延伸学习文档中涉及的软开关、故障仿真、微电网控制等关联技术,以拓展系统级设计能力。

87,989

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧