【问题标题】:Jquery TimePicker : How to dynamically change parametersJquery TimePicker:如何动态更改参数
【发布时间】:2012-06-09 04:34:22
【问题描述】:

我正在使用 Jquery Timepicker 。

我有两个输入字段 - 接受时间。

<input id="startTime"  size="30" type="text" />
<input id="endTime"  size="30" type="text" />

我根据documentation 使用 Jquery UI 计时器

$('#startTime').timepicker({
    'minTime': '6:00am',
    'maxTime': '11:30pm',
    'onSelect': function() {
        //change the 'minTime parameter of #endTime <--- how do I do this ?
     }
});
$('#endTime').timepicker({
    'minTime': '2:00pm',
    'maxTime': '11:30pm',
    'showDuration': true
});

我希望当第一个 timePicker 被选中时,第二个的 'minTime' 参数会改变。基本上我正在尝试收集某些活动的开始时间和结束时间。我希望第二个输入框显示来自第一个输入字段(开始时间)本身的值的选项。

【问题讨论】:

  • 我认为同样的问题也适用于其他 JQuery 元素。
  • 该页面有一个示例(最后一个),它与 source 一起执行此操作。

标签: javascript jquery jquery-ui timepicker


【解决方案1】:

你会做这样的事情,

$('#startTime').timepicker({
                'minTime': '6:00am',
                'maxTime': '11:30pm',
                    'onSelect': function() {

                    $('#endTime').timepicker('option', 'minTime', $(this).val());                        
              }
            });

您在这里所做的是,在#startTimeonSelect 函数中,您将#endTime 的选项minTime 设置为#startTime 的值

看到这个JS Fiddle

【讨论】:

  • 这个 JS Fiddle 没有显示 minTime 的变化。总是下午 2 点
【解决方案2】:

你可以参加 onchange 活动:

        $('#startTime').timepicker();

        $('#endTime').timepicker({
            'minTime': '12:00am',
            'showDuration': true
        });

        $('#startTime').on('changeTime', function() {
            $('#endTime').timepicker('option', 'minTime', $(this).val());
        });

我修改了第一个回复中发布的代码,这里是它的工作小提琴http://jsfiddle.net/NXVy2/215/

你也可以使用 on('change'...

    $('#startTime').on('change', function() {
        $('#endTime').timepicker('option', 'minTime', $(this).val());
    });

【讨论】:

  • 接受的答案不起作用(不再?),但这对我来说非常有效。
【解决方案3】:

jQuery-UI 小部件通常支持options 方法,该方法允许您更改现有实例的选项。通过提供一个字符串作为插件调用的第一个参数来调用小部件方法:

$(...).widget_name('method_name', arg...)

所以这应该适合你:

$('#endTime').timepicker('option', 'minTime', new_min_time)

【讨论】:

  • 谢谢先生!这很有帮助:)
  • 选项完美运行,这应该被标记为正确答案!
猜你喜欢
  • 1970-01-01
  • 2015-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-28
  • 2023-03-22
  • 1970-01-01
  • 2020-12-07
相关资源
最近更新 更多