TimePicker

FineUI. TimePicker

new TimePicker(options)

Description:
  • 时间选择控件。从预设时间间隔生成下拉列表(区别于 FineUI.DatePicker 的 displayType='time':TimePicker 是固定步长的下拉,DatePicker time 模式是滚轮选择)。

    相关在线示例

Examples

创建时间选择器,increment设置时间间隔(分钟):

FineUI.create({
	type: 'TimePicker', renderTo: document.body, fieldLabel: '时间', increment: 30
});

使用minValuemaxValue限制时间范围(仅营业时间):

FineUI.create({
	type: 'TimePicker', renderTo: document.body, fieldLabel: '预约时间',
	minValue: '09:00', maxValue: '18:00', increment: 60
});
Parameters:
Name Type Description
options Object

初始参数

Properties
Name Type Default Description
minValue string ''

最小值

maxValue string ''

最大值

increment number 30

每个可选项间隔的分钟数

editable boolean true

是否可编辑(覆盖 FineUI.DropDownList 的设置)

type string 'TimePicker'

控件类型

Extends

Members

bodyEl :jQuery

Description:
  • 字段主体对应的jQuery节点对象

Inherited From:

字段主体对应的jQuery节点对象

Type:
  • jQuery

el :jQuery

Description:
  • 控件对应的jQuery节点对象

Inherited From:

控件对应的jQuery节点对象

Type:
  • jQuery

items :Object

Description:
  • 子控件列表

Inherited From:

子控件列表

Type:
  • Object

Methods

getEncodedText(text) → {string}

Description:
  • 获取编码后的字符串

Inherited From:
Parameters:
Name Type Description
text string

原始字符串

Returns:

编码后的字符串

Type
string

getFormFields() → {Array.<FineUI.Field>}

Description:
  • 获取容器内(深度遍历)所有表单字段实例(FineUI.Field的子类,如TextBox/NumberBox/DatePicker等)

Inherited From:
Example

遍历表单全部字段,序列化为 name → value 的对象(用于自定义 ajax 提交;字段未声明name时改用id):

var values = {};
FineUI.ui.form1.getFormFields().forEach(function (field) {
    values[field.name || field.id] = field.getValue();
});
// values 形如:{ tbxUserName: 'FineUIPro', numberAge: 30, ... }
Returns:

表单字段数组

Type
Array.<FineUI.Field>

getItem(value) → {FineUI.Component}

Description:
  • 获取子控件(按索引/标识符/匹配函数查找;通常配合items无显式 id 的场景,比按FineUI.ui[id]更精准)

Inherited From:
Examples

按索引取第一个子控件:

var firstChild = FineUI.ui.toolbar1.getItem(0);

按 id 取子控件:

var btn = FineUI.ui.toolbar1.getItem('btnSave');

按匹配函数找第一个匹配的子控件(函数对每项返回 true 即匹配):

var btn = FineUI.ui.toolbar1.getItem(function (item) {
    return item.type === 'Button' && item.text === '保存';
});
Parameters:
Name Type Description
value number | string | function

子控件索引、标识符或者匹配函数

Returns:

子控件实例

Type
FineUI.Component

getTextByValue(value) → {string}

Description:
  • 获取值对应的显示文本

Inherited From:
Parameters:
Name Type Description
value string

Returns:

值对应的显示文本

Type
string

getValueByText(text) → {string}

Description:
  • 获取显示文本对应的值

Inherited From:
Parameters:
Name Type Description
text string

显示文本

Returns:

显示文本对应的值

Type
string

hidePopEl()

Description:
  • 隐藏弹出框

Inherited From:

isType(value) → {boolean}

Description:
  • 检测当前实例是否指定的控件类型

Inherited From:
Example
grid1.isType('panel') // 返回true
grid1.isType('grid')  // 返回true
Parameters:
Name Type Description
value Object

控件类型

Returns:

如果当前实例是指定的控件类型,返回true;否则返回false

Type
boolean

isUserInput() → {boolean}

Description:
  • 是否为用户自行输入值

Inherited From:
Returns:

是否为用户自行输入值

Type
boolean

loadData(data, valueopt)

Description:
  • 加载数据(会替换下拉项;常用于级联下拉:在父下拉change事件中调用子下拉的loadData

Inherited From:
Examples

省市县级联:选择省份后刷新城市下拉项:

FineUI.create({
    type: 'DropDownList', id: 'ddlSheng',
    data: [['bj', '北京'], ['shanghai', '上海'], ['guangdong', '广东']],
    listeners: {
        change: function () {
            var province = this.getValue();
            var cityData = getCitiesByProvince(province);
            FineUI.ui.ddlCity.loadData(cityData, '-1');  // 第二个参数指定默认选中
        }
    }
});

仅替换下拉项,不预设选中:

FineUI.ui.ddlCategory.loadData([
    ['fruit', '水果'],
    ['vegetable', '蔬菜']
]);
Parameters:
Name Type Attributes Description
data Array.<Object>

数据

value string | Array.<string> <optional>

选中的值(默认选中项)

showPopEl()

Description:
  • 显示弹出框

Inherited From:

Events

beforehide

Description:
  • 隐藏控件之前触发(返回false则取消隐藏操作)

Inherited From:

beforeselect

Description:
  • 选中列表项之前触发(返回false则取消选中操作)

Inherited From:
Parameters:
Name Type Description
event jQuery.Event

事件对象

selectedValue string

即将选中的值

originalValue string

原来的值

beforeshow

Description:
  • 显示控件之前触发(返回false则取消显示操作)

Inherited From:

blur

Description:
  • 输入框失去焦点时触发(常用于失焦校验或失焦联动)

Inherited From:
Example

失焦触发字段校验(仅校验当前字段,不影响整表):

FineUI.create({
    type: 'TextBox', fieldLabel: '邮箱', regex: /^[\w.]+@[\w.]+$/,
    listeners: {
        blur: function () {
            this.validate();
        }
    }
});
Parameters:
Name Type Description
event jQuery.Event

事件对象

change

Description:
  • 输入框值改变时触发(失焦或回车后;继承到所有 TextBox 派生类如NumberBox/DatePicker/DropDownList

Inherited From:
Example

响应值变化做联动:

FineUI.create({
    type: 'TextBox', fieldLabel: '关键字',
    listeners: {
        change: function () {
            FineUI.ui.grid1.loadDataUrl('/api/search', { q: this.getValue() });
        }
    }
});
Parameters:
Name Type Description
event jQuery.Event

事件对象

cleariconclick

Description:
  • 点击清空图标时触发

Inherited From:
Parameters:
Name Type Description
event jQuery.Event

事件对象

enter

Description:
  • 输入框获取焦点并按下 ENTER 键时触发(常用于"搜索框回车提交"或"密码框回车登录")

Inherited From:
Example

搜索框回车触发搜索(也可改用配置属性enterClickControl声明式实现):

FineUI.create({
    type: 'TextBox', fieldLabel: '关键字',
    listeners: {
        enter: function () {
            FineUI.ui.btnSearch.click();
        }
    }
});
Parameters:
Name Type Description
event jQuery.Event

事件对象

focus

Description:
  • 输入框获取焦点时触发

Inherited From:
Parameters:
Name Type Description
event jQuery.Event

事件对象

hide

Description:
  • 隐藏控件时触发

Inherited From:

layout

Description:
  • 布局控件时触发

Inherited From:

remove

Description:
  • 移除控件时触发(调用 remove() 时,控件 DOM 被销毁之前触发;可用于清理外部资源 / 解绑全局事件)

Inherited From:

render

Description:
  • 渲染控件时触发

Inherited From:

select

Description:
  • 选中列表项时触发

Inherited From:
Parameters:
Name Type Description
event jQuery.Event

事件对象

selectedValue string

选中的值

originalValue string

原来的值

show

Description:
  • 显示控件时触发

Inherited From:

tagclose

Description:
  • 关闭某个标签时触发(仅在启用多选标签模式时有效)

Inherited From:
Parameters:
Name Type Description
event jQuery.Event

事件对象

tagValue string

关闭标签的值

tagText string

关闭标签的显示文本

trigger1click

Description:
  • 点击第一个触发图标时触发

Inherited From:
Parameters:
Name Type Description
event jQuery.Event

事件对象

trigger2click

Description:
  • 点击第二个触发图标时触发

Inherited From:
Parameters:
Name Type Description
event jQuery.Event

事件对象

triggerclick

Description:
  • 点击触发图标时触发

Inherited From:
Parameters:
Name Type Description
event jQuery.Event

事件对象