现求一个输入时间的ActiveX控件

fuzhilucky 2003-08-18 08:10:55
我要在网页上放一个控件,要求是个文本框且只能输入时间,就象WINDOWS右下角的时间打开后在文本框中输入时间的那种,哪个ACTIVEX能实现这个东东啊?
...全文
59 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fuzhilucky 2003-08-19
  • 打赏
  • 举报
回复
up
Gorgee 2003-08-19
  • 打赏
  • 举报
回复
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>New Page 1</title>
</head>

<body>
<script language=Javascript>
function objFocus(n) //控制光标选中光标后一字符
{
if (arguments.length == 0) var n=0;
var e = window.event.srcElement;
var r = e.createTextRange();
r.moveStart('character', n);
r.collapse(true);
r.select();
var s = document.selection.createRange().duplicate().duplicate();
s.moveStart('character', 1);
s.setEndPoint("EndToEnd", r);
s.select();
}
function keyPress(e) //内容填空
{
var k = String.fromCharCode(window.event.keyCode);
if(!/^\d/.test(k)) return false; //不准输入非法字符

e.focus();
var range = e.createTextRange();
var select1 = document.selection.createRange().duplicate();
select1.setEndPoint("StartToStart",range);

var s1 = select1.text; //得到光标左边的字串
var s2 = e.value.substr(s1.length); //得到光标右边的字串
e.value = s1.substring(0, s1.length-1) + k + s2; //给文本框赋值

var n = s1.length;
if (n==4 || n==7 || n==10 || n==13) n++;
objFocus(n);

window.event.keyCode = 0;
event.returnValue = false;
}
function keyDown(e) //删除回退按方向键时的处理
{
var k = window.event.keyCode;
if (!(k>=48 && k<=57 //数字0-9
|| k==46 //删除键 Del
|| k==8 //回删链 Backspace
|| k==37 //方向链 ←
|| k==39 //方向键 →
|| k==9 //制表键 Tab
|| k==13 //回车键 Enter
)) return false; //屏蔽非上面所列的键
e.focus();

var range = e.createTextRange();
var select1 = document.selection.createRange().duplicate();
select1.setEndPoint("StartToStart",range);

var s1 = select1.text; //得到光标左边的字串
var s2 = e.value.substr(s1.length); //得到光标右边的字串
var n = s1.length;

switch(k)
{
case 8 :
e.value = s1.substring(0, n-1) + "_" + s2;
if (n==6 || n==9 || n==12 || n==15) n--;
objFocus(n-2);
window.event.keyCode = 0;
event.returnValue = false;
break;
case 46 :
e.value = s1.substring(0, n-1) + "_" + s2;
if (n==4 || n==7 || n==10 || n==13) n++;
objFocus(n);
window.event.keyCode = 0;
event.returnValue = false;
break;
case 37 :
if (n==6 || n==9 || n==12 || n==15) n--;
if (n == e.value.length)
{
if (document.selection.createRange().text == "")
objFocus(n-1);
else
objFocus(n - 2);
}
else
objFocus(n - 2);
window.event.keyCode = 0;
event.returnValue = false;
break;
case 39 :
if (n==4 || n==7 || n==10 || n==13) n++;
objFocus(n);
window.event.keyCode = 0;
event.returnValue = false;
break;
}
}
</script>

<form name=form1>
<input
name = "txt"
maxlength = "16"
size = "18"
value = "____-__-__ __:__"
onfocus = "objFocus()"
onkeydown = "return keyDown(this)"
onkeypress = "return keyPress(this)"
onpaste = "return false"
ondragenter = "return false"
style = "ime-mode:Disabled"
>
</form>

</body>

</html>
flyycyu 2003-08-19
  • 打赏
  • 举报
回复
自己编一个
wanghr100 2003-08-19
  • 打赏
  • 举报
回复
看看吧,有很多种方法的.
http://expert.csdn.net/Expert/topic/1823/1823464.xml?temp=.4257166

61,110

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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