ExtJS xtype timefield - 设置默认选定
ExtJS xtype timefield - set default selected
我继承了一个使用 ExtJS 的应用程序,并且对它的约定相对不熟悉。
我有一个用于时间输入的选择框,默认为传入的时间。是否可以为默认值设置 selected = selected?当前显示默认时间,但是当您单击该框时,选项列表默认为第一个值(因此,如果默认为下午 2 点,当您单击以选择替代时间时,您将被带到凌晨 12 点而不是下午 2 点)。
代码:
{
xtype: 'timefield',
id: 'timeselect',
name: 'starttime',
fieldLabel: 'Start Time',
labelWidth: 80,
labelAlign: 'right',
width: 160,
minValue: '12:00 AM',
maxValue: '11:55 PM',
value: MyApp.config.AppConfig.time, //Current time rounded to hour
increment: 15
},
谢谢!
编辑:澄清。选择框显示页面加载的正确时间。但是当用户单击选择时,他们会被带到选项列表的开头(在本例中为上午 12:00)。我希望选项列表默认为所选时间(类似于)。谢谢!
编辑#2:应用程序使用v4.0.7
解决方案很简单:升级您的 Ext!没那么简单?同时修补它。我必须承认,我试图将 Ext.form.field.Time
v4.2 的代码复制到小提琴中。那行不通。这是一个更简洁的方法:
Ext.define('Ext.ux.fix.Ext.form.field.Time.CurrentSelectionOnExpand', {
override: 'Ext.form.field.Time'
,initComponent: function() {
this.callParent();
this.on({
scope: this
,delay: 1 // let render
,expand: function() {
this.highlightCurrent();
}
});
}
// copied from Ext.view.BoundListKeyNav.method#highlightAt()
,highlightCurrent: function() {
var me = this,
picker = me.picker,
index = picker.store.find('disp', me.getRawValue()),
item = picker.all.item(index)
if (item) {
item = item.dom;
picker.highlightItem(item);
picker.getTargetEl().scrollChildIntoView(item, false);
}
}
});
相关文章:
- 杰辛特 |传递默认设置 |函数声明和“this”
- jQuery插件在默认设置中覆盖url
- 如何覆盖羽灯中的默认设置
- 获取从默认设置更改的所有复选框的 id
- 如何访问图表.js默认设置?(相关 - 如何打开工具提示?
- 如何设置默认设置
- 当运行javascript代码时,网页样式会一直恢复到默认设置
- 离子输入日期默认设置为今天
- $.ajax与$.ajaxSetup默认设置相结合
- 在更新时阻止默认设置
- Angular UI TinyMCE:如何设置默认设置
- 如果条件为false,则阻止默认设置
- 将moments.js默认设置为特定的日期时间
- 将sap.ui.commons.DatePicker默认设置为当前日期
- 当尝试使用touchOverflowEnabled覆盖jQuery Mobile默认设置时,页面加载了两次
- 清除所有数据并返回默认设置
- 如何使用AngularJS将页面设置还原为默认设置
- 隐藏此消息:ES5选项现在默认设置
- 为每个jQuery插件实例设置默认设置的正确方法
- 无法在引导中更改输入框的大小,默认设置为input-sm