gpt4 book ai didi

javascript - 时间下拉列表

转载 作者:行者123 更新时间:2023-12-03 11:42:12 25 4
gpt4 key购买 nike

我想禁用以小时和分钟为单位的过去时间下拉列表。请找到我尝试过的代码 http://jsfiddle.net/7de4onun/18/ 。当在单个下拉列表中显示小时和分钟时,我能够从时间下拉列表中禁用过去的时间。但我怎样才能禁用过去的小时和分钟,小时和分钟分别显示在单独的下拉列表中,如 fiddle 所示,基于用户从日期下拉列表中选择的日期。

下面是示例代码:

require([
"dojo/_base/lang", "dijit/registry", "dojo/ready", "dijit/form/TimeTextBox", "dojo/parser"
], function(lang, registry, ready) {
ready(function() {
var timeH = registry.byId("selHours"),
timeM = registry.byId("selMins");
document.getElementById('selHours').value = document.getElementsByName('tHours')[0].value;
document.getElementById('selMins').value = document.getElementsByName('tMinutes')[0].value;
});
});

请在此处找到完整代码:http://jsfiddle.net/7de4onun/18/

PS:我想根据用户选择的日期禁用已经过去的小时和分钟,以便用户无法从下拉列表中选择过去的小时或分钟。

最佳答案

请通过Fiddle http://jsfiddle.net/7de4onun/19/

通过以下几项更改,您可以实现这一目标

  1. 向小时和分钟元素添加了属性“data-dojo-id”,如下所示

    Hours: <input id="selHours" name="selHours" data-dojo-id="dojoSelHours"  />
    Minutes: <input id="selMins" name="selMins" data-dojo-id="dojoSelMins" />
  2. 在 OracleDateTextBox 控件更改处理程序中,您可以看到以下更改。

    onChange: function(v){
    setTimeout(showServerValue, 0);

    var currentTime=new Date();//new Date(v.getYear(), v.getMonth(), v.getDay(), 9, 25, 0);

    //Hour min constraints
    dojoSelHours.constraints.min= currentTime;

    //Minute min constraints
    dojoSelMins.constraints.min= currentTime;
    }

关于javascript - 时间下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26221804/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com