Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否有预先编写的低影响时间下拉列表,允许选择一天中的1440分钟?_Javascript_Jquery_Html_Select_Drop Down Menu - Fatal编程技术网

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时间选择器。但是