Extjs - 在面板中设置焦点字段
Posted
技术标签:
【中文标题】Extjs - 在面板中设置焦点字段【英文标题】:Extjs - Set focus field in panel 【发布时间】:2013-07-04 02:42:36 【问题描述】:我定义了一个扩展 Ext.form.Panel 的面板,别名是:“example”。 在我的视口中,我为我的东部初始化 xtype = 'example'。 我希望当我折叠该面板(示例)时,我的第一个字段(日期字段)将聚焦 我尝试了下面的一些代码,但没有工作
//1. not working
,listeners:
afterrender: function(field)
field.focus(true, 100);
//2. not working
Ext.getCmp('myDatefieldId').focus(true, 20);
我该怎么做谢谢
【问题讨论】:
【参考方案1】:您能否提供更多信息? 你使用控制器(mvc 模式?) 如果是,您可以尝试在控制器中处理焦点。
我们的中心有两个 DateFields 并通过 Ext.ComponentQuery.query('[itemId=dtf-faelligkeit-ab]')[0].focus() 似乎工作完美(使用 chrome 开发者控制台测试)
在我的视口中,我添加了一个折叠监听器:
region: 'east',
layout: 'border',
id: 'viewport-east-todo-panel',
title: 'Todo - Detailansicht',
labelWidth: 100,
collapsible: true,
collapsed: true,
split: true,
width: 340,
minSize: 340,
maxSize: 400,
items: [
region: 'center',
xtype: 'main.todo.TodoDetails'
]
,
listeners:
collapse: function ()
Ext.ComponentQuery.query('[itemId=dtf-faelligkeit-ab]')[0].focus();
在 collapse-Listener 中,我关注日期字段(itemID: 'dtf-faelligkeit-ab')。
希望能帮到你
【讨论】:
非常感谢。我使用我的面板已折叠:true 并且我使用 expand: function (p, eOpts) 和上面的第二个代码并且它可以工作。但我不知道为什么我上面的第一个代码不起作用:) 很抱歉,我无法帮助您解决第一个代码问题。我是一个 extjs-rookie,处理事件对我来说总是一个新问题。希望有人在那里阅读您的问题并知道如何处理它。祝你好运;)以上是关于Extjs - 在面板中设置焦点字段的主要内容,如果未能解决你的问题,请参考以下文章