new TimePicker(options)
- Description:
时间选择控件。从预设时间间隔生成下拉列表(区别于 FineUI.DatePicker 的 displayType='time':TimePicker 是固定步长的下拉,DatePicker time 模式是滚轮选择)。
相关在线示例:
Examples
创建时间选择器,increment设置时间间隔(分钟):
FineUI.create({
type: 'TimePicker', renderTo: document.body, fieldLabel: '时间', increment: 30
});
使用minValue和maxValue限制时间范围(仅营业时间):
FineUI.create({
type: 'TimePicker', renderTo: document.body, fieldLabel: '预约时间',
minValue: '09:00', maxValue: '18:00', increment: 60
});
Parameters:
| Name | Type | Description | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object | 初始参数 Properties
|
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 | 事件对象 |