Javascript 是否有预先编写的低影响时间下拉列表,允许选择一天中的1440分钟?
我可能会自己写。。我想看看是否有人已经知道了Javascript 是否有预先编写的低影响时间下拉列表,允许选择一天中的1440分钟?,javascript,jquery,html,select,drop-down-menu,Javascript,Jquery,Html,Select,Drop Down Menu,我可能会自己写。。我想看看是否有人已经知道了 在一个表单中将有多个时间下拉列表。它们将不是标签,每个选择有1440个选项。。。它们将有一个默认的滚动位置,它们看起来像一个包含1440个项目的下拉列表,但只显示滚动位置的项目,单个项目将只存储在聚焦下拉列表中。1440个项目在任何下拉列表中都是不明智的。尤其是如果一页上有多个 为什么不找一些其他的时间输入控件呢 。。。或者将其分为2个选项-1个用于小时,1个用于分钟1440项在任何下拉列表中都是不明智的。尤其是如果一页上有多个 为什么不找
在一个表单中将有多个时间下拉列表。它们将不是
标签,每个选择有1440个选项。。。它们将有一个默认的滚动位置,它们看起来像一个包含1440个项目的下拉列表,但只显示滚动位置的项目,单个项目将只存储在聚焦下拉列表中。1440个项目在任何下拉列表中都是不明智的。尤其是如果一页上有多个
为什么不找一些其他的时间输入控件呢
。。。或者将其分为2个选项-1个用于小时,1个用于分钟1440项在任何下拉列表中都是不明智的。尤其是如果一页上有多个 为什么不找一些其他的时间输入控件呢
。。。或者将其分为2个选项-1个用于小时,1个用于分钟一个包含1440个条目的下拉列表将不可用 一个普通的文本框如何,这样用户就可以快速地键入他们想要的时间(并且输入在没有JavaScript的情况下仍然可以工作),如果需要,还可以使用上/下旋转控件:
<input type="text" class="spin-time" value="00:00">
<script type="text/javascript">
// Find and apply to elements with class `spin-time`
//
var inputs= document.getElementsByTagName('input');
for (var i= inputs.length; i-->0;)
if (inputs[i].className==='spin-time')
addTimeSpinner(inputs[i]);
function addTimeSpinner(input) {
input.onchange= function() { alterTime(0); };
input.parentNode.insertBefore(makeButton('-', -60), input);
input.parentNode.insertBefore(makeButton('+', 60), input);
input.parentNode.insertBefore(makeButton('+', 1), input.nextSibling);
input.parentNode.insertBefore(makeButton('-', -1), input.nextSibling);
function makeButton(label, d) {
var button= document.createElement('input');
button.type= 'button';
button.value= label;
button.onclick= function() { alterTime(d); };
return button;
}
function alterTime(d) {
// Parse time value, default to 00:00 if doesn't make sense
//
var mins= 0;
var match= input.value.match(/^(\d\d):(\d\d)$/);
if (match!==null)
mins= parseInt(match[1], 10)*60+parseInt(match[2], 10);
// Add time difference, wrapping round
//
mins= (mins+d+1440)%1440;
// Format back to hh:mm string
//
input.value= padLeft(Math.floor(mins/60), 2, '0')+':'+padLeft(mins%60, 2, '0');
}
function padLeft(v, n, c) {
v+= '';
if (v.length>=n) return v;
return new Array(n-v.length+1).join(c)+v;
}
}
</script>
//查找并应用于类为“自旋时间”的元素`
//
var inputs=document.getElementsByTagName('input');
对于(变量i=inputs.length;i-->0;)
if(输入[i].className=='spin-time')
addTimeSpinner(输入[i]);
函数addTimeSpinner(输入){
input.onchange=function(){alterTime(0);};
input.parentNode.insertBefore(makeButton('-',-60),input);
input.parentNode.insertBefore(makeButton(+',60),input);
input.parentNode.insertBefore(makeButton(+',1),input.nextSibling);
input.parentNode.insertBefore(makeButton('-',-1),input.nextSibling);
功能按钮(标签,d){
var按钮=document.createElement('input');
button.type='button';
按钮。值=标签;
onclick=function(){alterTime(d);};
返回按钮;
}
函数转换时间(d){
//解析时间值,如果没有意义,则默认为00:00
//
var-mins=0;
var match=input.value.match(/^(\d\d):(\d\d)$/);
如果(匹配!==null)
分钟=parseInt(匹配[1],10)*60+parseInt(匹配[2],10);
//添加时差,换行
//
分钟=(分钟+d+1440)%1440;
//格式返回到hh:mm字符串
//
input.value=padLeft(数学地板(分钟/60),2,'0')+':'+padLeft(分钟%60,2,'0');
}
功能焊盘左(v、n、c){
v+='';
如果(v.length>=n)返回v;
返回新数组(n-v.length+1);
}
}
这是24小时制。修改代码以解析并生成12小时时钟格式(包括正确处理12点和12点的可怕缺点)是留给那些不完全讨厌12小时时钟的想法并希望看到它从地球上消失的人的一个练习。一个包含1440个条目的下拉列表是不可用的 一个普通的文本框如何,这样用户就可以快速地键入他们想要的时间(并且输入在没有JavaScript的情况下仍然可以工作),如果需要,还可以使用上/下旋转控件:
<input type="text" class="spin-time" value="00:00">
<script type="text/javascript">
// Find and apply to elements with class `spin-time`
//
var inputs= document.getElementsByTagName('input');
for (var i= inputs.length; i-->0;)
if (inputs[i].className==='spin-time')
addTimeSpinner(inputs[i]);
function addTimeSpinner(input) {
input.onchange= function() { alterTime(0); };
input.parentNode.insertBefore(makeButton('-', -60), input);
input.parentNode.insertBefore(makeButton('+', 60), input);
input.parentNode.insertBefore(makeButton('+', 1), input.nextSibling);
input.parentNode.insertBefore(makeButton('-', -1), input.nextSibling);
function makeButton(label, d) {
var button= document.createElement('input');
button.type= 'button';
button.value= label;
button.onclick= function() { alterTime(d); };
return button;
}
function alterTime(d) {
// Parse time value, default to 00:00 if doesn't make sense
//
var mins= 0;
var match= input.value.match(/^(\d\d):(\d\d)$/);
if (match!==null)
mins= parseInt(match[1], 10)*60+parseInt(match[2], 10);
// Add time difference, wrapping round
//
mins= (mins+d+1440)%1440;
// Format back to hh:mm string
//
input.value= padLeft(Math.floor(mins/60), 2, '0')+':'+padLeft(mins%60, 2, '0');
}
function padLeft(v, n, c) {
v+= '';
if (v.length>=n) return v;
return new Array(n-v.length+1).join(c)+v;
}
}
</script>
//查找并应用于类为“自旋时间”的元素`
//
var inputs=document.getElementsByTagName('input');
对于(变量i=inputs.length;i-->0;)
if(输入[i].className=='spin-time')
addTimeSpinner(输入[i]);
函数addTimeSpinner(输入){
input.onchange=function(){alterTime(0);};
input.parentNode.insertBefore(makeButton('-',-60),input);
input.parentNode.insertBefore(makeButton(+',60),input);
input.parentNode.insertBefore(makeButton(+',1),input.nextSibling);
input.parentNode.insertBefore(makeButton('-',-1),input.nextSibling);
功能按钮(标签,d){
var按钮=document.createElement('input');
button.type='button';
按钮。值=标签;
onclick=function(){alterTime(d);};
返回按钮;
}
函数转换时间(d){
//解析时间值,如果没有意义,则默认为00:00
//
var-mins=0;
var match=input.value.match(/^(\d\d):(\d\d)$/);
如果(匹配!==null)
分钟=parseInt(匹配[1],10)*60+parseInt(匹配[2],10);
//添加时差,换行
//
分钟=(分钟+d+1440)%1440;
//格式返回到hh:mm字符串
//
input.value=padLeft(数学地板(分钟/60),2,'0')+':'+padLeft(分钟%60,2,'0');
}
功能焊盘左(v、n、c){
v+='';
如果(v.length>=n)返回v;
返回新数组(n-v.length+1);
}
}
这是24小时制。修改代码以解析并生成12小时时钟格式(包括正确处理12点和12点的可怕缺点)是留给那些不完全讨厌12小时时钟的想法并希望看到它从地球上消失的人的一种练习。我会使用HTML5和:
<input type="time" />
如果需要,还可以添加jQuery时间选择器。但在大多数情况下,我认真地发现,直接输入时间比在某种列表中查找时间要快。只要确保您验证并有一些易于阅读的错误消息,等等…我会使用HTML5和:
<input type="time" />
如果需要,还可以添加jQuery时间选择器。但是