在页面中选择时间是怎么实现的,有没有这类控件? 在页面中选择时间是怎么实现的,有没有这类控件?我是新手,我找不到好方法阿! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 VS自带的日历控件就可以了,也有用js写的日历控件。一大堆,搜一下就有了。 我要的是时间,不是日期!!!No Date,But TIME 回复人: youyue(由月) ( ) 信誉:100 2004-9-29 16:31:27 得分: 30 看见你这个问题,想了我一下午,终于用javascript做了个控件出来了。你看看行不行。<script>function isTime(str){ var a = str.match(/^(\d{0,2})(:)?(\d{0,2})\2(\d{0,2})$/); if (a == null) return false; if (a[1]>=24 || a[3]>=60 || a[4]>=60) return false; return true;}function check(obj){var range=obj.createTextRange(); var text = range.text;var selrange = document.selection.createRange();var seltext = selrange.text;var startpos = 0,endpos = 0;while(selrange.compareEndPoints("StartToStart",range)>0){ selrange.moveStart("character",-1); startpos ++;}while(selrange.compareEndPoints("EndToStart",range)>0){ selrange.moveEnd("character",-1); endpos ++;}if(event.keyCode>=48){ var keytext = String.fromCharCode(event.keyCode); text = text.substring(0,startpos) + keytext + text.substring(endpos,text.length);}else if(event.keyCode == 46){//delete if(startpos == endpos)text = text.substring(0,startpos) + text.substring(startpos+1,text.length); else text = text.substring(0,startpos) + text.substring(endpos,text.length);}else if(event.keyCode == 8){ if(startpos == endpos)text = text.substring(0,startpos-1) + text.substring(startpos,text.length); else text = text.substring(0,startpos) + text.substring(endpos,text.length);}window.status = text;if(!isTime(text)){ event.returnValue = false;}}</script><input id="date" onkeyDown="check(this)" value="00:00:00"> 看到一个这个,觉得也不是很好用! //b.aspx private void ConfirmBtn_Click(object sender, System.EventArgs e) { str.Append("<script language='javascript'>"); str.Append(Environment.NewLine); str.Append("window.opener.document.all['"); str.Append(Request.QueryString["src"]); str.Append("'].value = '"); str.Append(datepicker.SelectedDate); str.Append("';"); str.Append(Environment.NewLine); str.Append("window.close();"); str.Append(Environment.NewLine); str.Append("</script>"); this.Page.Controls.Add(new LiteralControl(str.ToString())); }//下面的函数放在a.aspx的javascript里 function pickdate(src) { window.open("b.aspx?src="+src,"_blank","height = 260,width = 300,left=100,top=100,location = no,menubar = no,toolbar=no,toolbar=no",true); }//在html里放一个超连接<A href="javascript:pickdate('date');"></A> 关于Javascript,急,在线等 有人用过Wizard控件吗? 怎么提取数据库的视频文件地址播放 求漂亮的进度条gif图片 ASP.NET中MultiPage控件如何用! 为什么我写入的cookies和别人的不一样 用Script语句保存文件时的问题 做在线编辑效果代码时遇到的Js和asp前后台交互的问题! 我的服务器的Computer management的组之中怎么没有Debugger Users这个组啊? 在2000上正常运行Asp.net的最低软件需求是什么? 很简单的问题,关于response.redirect 请问Applicatioin状态变量的生命周期?
看见你这个问题,想了我一下午,终于用javascript做了个控件出来了。你看看行不行。
<script>
function isTime(str){
var a = str.match(/^(\d{0,2})(:)?(\d{0,2})\2(\d{0,2})$/);
if (a == null) return false;
if (a[1]>=24 || a[3]>=60 || a[4]>=60) return false;
return true;
}
function check(obj){
var range=obj.createTextRange();
var text = range.text;
var selrange = document.selection.createRange();
var seltext = selrange.text;
var startpos = 0,endpos = 0;
while(selrange.compareEndPoints("StartToStart",range)>0){
selrange.moveStart("character",-1);
startpos ++;
}
while(selrange.compareEndPoints("EndToStart",range)>0){
selrange.moveEnd("character",-1);
endpos ++;
}
if(event.keyCode>=48){
var keytext = String.fromCharCode(event.keyCode);
text = text.substring(0,startpos) + keytext + text.substring(endpos,text.length);
}else if(event.keyCode == 46){//delete
if(startpos == endpos)text = text.substring(0,startpos) + text.substring(startpos+1,text.length);
else text = text.substring(0,startpos) + text.substring(endpos,text.length);
}else if(event.keyCode == 8){
if(startpos == endpos)text = text.substring(0,startpos-1) + text.substring(startpos,text.length);
else text = text.substring(0,startpos) + text.substring(endpos,text.length);
}
window.status = text;
if(!isTime(text)){
event.returnValue = false;
}
}
</script><input id="date" onkeyDown="check(this)" value="00:00:00"> 看到一个这个,觉得也不是很好用!
private void ConfirmBtn_Click(object sender, System.EventArgs e)
{ str.Append("<script language='javascript'>");
str.Append(Environment.NewLine);
str.Append("window.opener.document.all['");
str.Append(Request.QueryString["src"]);
str.Append("'].value = '");
str.Append(datepicker.SelectedDate);
str.Append("';");
str.Append(Environment.NewLine);
str.Append("window.close();");
str.Append(Environment.NewLine);
str.Append("</script>");
this.Page.Controls.Add(new LiteralControl(str.ToString()));
}//下面的函数放在a.aspx的javascript里
function pickdate(src)
{
window.open("b.aspx?src="+src,"_blank","height = 260,width = 300,left=100,top=100,location = no,menubar = no,toolbar=no,toolbar=no",true);
}//在html里放一个超连接
<A href="javascript:pickdate('date');"></A>