随笔-40  评论-24  文章-0  trackbacks-0
自己在网上找了半天没找到只有 “时分秒”的控件, 就自己做了个,发在这里方便有人用到


鼠标点击 后 的效果


SetTime.js

/**//***********************************
* 简单时间控件: version 1.0
* 作者:李禄燊 
* 时间:2007-10-31

* 使用说明:
* 首先把本控件包含到页面 
* <script src="XXX/setTime.js" type="text/javascript"></script>
* 控件调用函数:_SetTime(field)
* 例如 <input name="time" type="text"   onclick="_SetTime(this)"/>
*
***********************************
*/
var str = "";
document.writeln(
"<div id=\"_contents\" style=\"padding:6px; background-color:#E3E3E3; font-size: 12px; border: 1px solid #777777;  position:absolute; left:?px; top:?px; width:?px; height:?px; z-index:1; visibility:hidden\">");
str 
+= "\u65f6<select name=\"_hour\">";
for (h = 0; h <= 9; h++) {
    str 
+= "<option value=\"0" + h + "\">0" + h + "</option>";
}
for (h = 10; h <= 23; h++) {
    str 
+= "<option value=\"" + h + "\">" + h + "</option>";
}
str 
+= "</select> \u5206<select name=\"_minute\">";
for (m = 0; m <= 9; m++) {
    str 
+= "<option value=\"0" + m + "\">0" + m + "</option>";
}
for (m = 10; m <= 59; m++) {
    str 
+= "<option value=\"" + m + "\">" + m + "</option>";
}
str 
+= "</select> \u79d2<select name=\"_second\">";
for (s = 0; s <= 9; s++) {
    str 
+= "<option value=\"0" + s + "\">0" + s + "</option>";
}
for (s = 10; s <= 59; s++) {
    str 
+= "<option value=\"" + s + "\">" + s + "</option>";
}
str 
+= "</select> <input name=\"queding\" type=\"button\" onclick=\"_select()\" value=\"\u786e\u5b9a\" style=\"font-size:12px\" /></div>";
document.writeln(str);
var _fieldname;
function _SetTime(tt) {
    _fieldname 
= tt;
    
var ttop = tt.offsetTop;    //TT控件的定位点高
    var thei = tt.clientHeight;    //TT控件本身的高
    var tleft = tt.offsetLeft;    //TT控件的定位点宽
    while (tt = tt.offsetParent) {
        ttop 
+= tt.offsetTop;
        tleft 
+= tt.offsetLeft;
    }
    document.all._contents.style.top 
= ttop + thei + 4;
    document.all._contents.style.left 
= tleft;
    document.all._contents.style.visibility 
= "visible";
}
function _select() {
    _fieldname.value 
= document.all._hour.value + ":" + document.all._minute.value + ":" + document.all._second.value;
    document.all._contents.style.visibility 
= "hidden";
}




posted on 2007-11-01 15:33 Super·shen BLOG 李禄燊 阅读(2696) 评论(4)  编辑  收藏 所属分类: 工作

评论:
# re: 刚刚做的一个 JS简单时间控件【JS时分秒时间控件】 2007-11-09 16:49 | Logan
谢谢,找这样一个时间输入控件很久了。  回复  更多评论
  
# re: 2007-11-09 17:12 | Logan
但是好象和一个JS的Calendar冲突,如果可以的话帮忙看下,谢谢。
http://www.sendspace.com/file/7a3vif  回复  更多评论
  
# 有点问题 2008-09-04 18:09 | ella
您的控件如果遇到有背景的就直接看不到了呀
  回复  更多评论
  
# re: 刚刚做的一个 JS简单时间控件【JS时分秒时间控件】[未登录] 2008-09-22 10:34 | jxva
帮你修改成通用于其它浏览器的了,建议最好封装成js类


/**//***********************************
* 简单时间控件: version 1.0
* 作者:李禄燊
* 时间:2007-10-31
*
* 使用说明:
* 首先把本控件包含到页面
* <script src="XXX/setTime.js" type="text/javascript"></script>
* 控件调用函数:_SetTime(field)
* 例如 <input name="time" type="text" onclick="_SetTime(this)"/>
*
************************************/
var str = "";
document.writeln("<div id=\"_contents\" style=\"padding:6px; background-color:#E3E3E3; font-size: 12px; border: 1px solid #777777; position:absolute; left:?px; top:?px; width:?px; height:?px; z-index:1; visibility:hidden\">");
str += "\u65f6<select id=\"_hour\">";
for (h = 0; h <= 9; h++) {
str += "<option value=\"0" + h + "\">0" + h + "</option>";
}
for (h = 10; h <= 23; h++) {
str += "<option value=\"" + h + "\">" + h + "</option>";
}
str += "</select> \u5206<select id=\"_minute\">";
for (m = 0; m <= 9; m++) {
str += "<option value=\"0" + m + "\">0" + m + "</option>";
}
for (m = 10; m <= 59; m++) {
str += "<option value=\"" + m + "\">" + m + "</option>";
}
str += "</select> \u79d2<select id=\"_second\">";
for (s = 0; s <= 9; s++) {
str += "<option value=\"0" + s + "\">0" + s + "</option>";
}
for (s = 10; s <= 59; s++) {
str += "<option value=\"" + s + "\">" + s + "</option>";
}
str += "</select> <input name=\"queding\" type=\"button\" onclick=\"_select()\" value=\"\u786e\u5b9a\" style=\"font-size:12px\" /></div>";
document.writeln(str);
var _fieldname;
function _SetTime(tt) {
_fieldname = tt;
var ttop = tt.offsetTop; //TT控件的定位点高
var thei = tt.clientHeight; //TT控件本身的高
var tleft = tt.offsetLeft; //TT控件的定位点宽
while (tt = tt.offsetParent) {
ttop += tt.offsetTop;
tleft += tt.offsetLeft;
}
document.getElementById("_contents").style.top = (ttop + thei + 4)+"px";
document.getElementById("_contents").style.left = tleft+"px";
document.getElementById("_contents").style.visibility = "visible";
}
function _select() {
_fieldname.value = document.getElementById("_hour").value + ":" + document.getElementById("_minute").value + ":" + document.getElementById("_second").value;
document.getElementById("_contents").style.visibility = "hidden";
}  回复  更多评论
  


标题  
姓名  
主页
验证码 *  
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2007-11-01 15:43 编辑过