Skip to content

TimeSpinner(时间微调)

扩展自$.fn.iSpinner.defaults。使用$.fn.iTimespinner.defaults重写默认值对象。

时间微调组件的创建基于微调组件。它和数字微调类似,但是显示的时间值。时间微调组件允许用户点击组件右侧的小按钮来增加或减少时间。

依赖关系

使用案例

使用标签创建时间微调组件。

html
<input id="ss" data-toggle="topjui-timespinner" data-options="required:true,width:80,min:'08:30',showSeconds:true">

使用Javascript创建时间微调组件。

html
<input id="ss">
javascript
$('#ss').iTimespinner({
    width:80,
    min: '08:30',
    required: true,
    showSeconds: true
});

属性

该组件属性扩展自spinner(微调),该组件新增的属性如下:

属性名属性值类型描述默认值
separatorstring定义在小时、分钟和秒之间的分隔符。:
showSecondsboolean定义是否显示秒钟信息。false
highlightnumber初始选中的字段 0=小时,1=分钟...0
formatterfunction(date)格式化日期函数,该函数接受date对象型参数并返回一个字符串值。见下方代码示例。
parserfunction(s)解析日期/时间字符串的函数,该函数接受date字符串类型的参数并返回一个date对象值。见下方代码示例。
selectionsarray高亮选择部分的值,突出显示每一部分。例如:将字符从0点到2则高亮小时部分。[[0,2],[3,5],[6,8]]

属性代码示例

formatter属性示例:

以下的示例代码展示了如何覆盖默认格式化器的方法:

javascript
$.fn.iTimespinner.defaults.formatter = function(date){
    if (!date){return '';}
    var opts = $(this).iTimespinner('options');
    var tt = [formatN(date.getHours()), formatN(date.getMinutes())];
    if (opts.showSeconds){
        tt.push(formatN(date.getSeconds()));
    }
    return tt.join(opts.separator);
    function formatN(value){
        return (value < 10 ? '0' : '') + value;
    }
}

parser属性示例:

以下的示例代码展示了如何覆盖默认日期解析器的方法:

javascript
$.fn.iTimespinner.defaults.iParser = function(s){
    var opts = $(this).iTimespinner('options');
    if (!s){return null;}
    var tt = s.split(opts.separator);
    return new Date(1900, 0, 0,
    parseInt(tt[0],10)||0, parseInt(tt[1],10)||0, parseInt(tt[2],10)||0);
}

事件

该组件事件完全继承自spinner(微调)。

方法

该组件的方法扩展自spinner(微调),该组件重写的方法如下:

方法名方法参数描述
optionsnone返回属性对象。
setValuevalue设置时间微调组件的值。见下方代码示例。
getHoursnone获取当前的小时数。
getMinutesnone获取当前的分钟数。
getSecondsnone获取当前的秒数。

方法代码示例

setValue方法示例:

javascript
$('#ss').iTimespinner('setValue', '17:45');  // 设置时间微调组件的值
var v = $('#ss').iTimespinner('getValue');  // 获取时间微调组件的值
alert(v);

基于最新稳定版jQuery EasyUI构建的前端框架