angular - 如何将焦点设置在 dxi 项目上
问题描述
我们在 Angular 6 应用程序中使用来自 DevExpress 的 DevExtreme-Components。我们有一个借助 dxi-item 元素构建的表单,如下所示:
<dx-form id="form" #manageOfferForm [formData]="getOfferToManageForView">
<dxi-item class="dx-fieldset" itemType="group" caption="Projektstammdaten">
<dxi-item dataField="description" [label]="{text: 'Description'}">
</dxi-item>
...
现在我的问题是如何将焦点设置在控制器中的 dxi-item 编辑器元素上?
解决方案
首先,在你的组件中创建一个方法,例如:
...
setFocus(e){
e.component.focus();
}
...
接下来,尝试将其添加到编辑器的选项中:
<dxi-item
dataField="Description"
[label]="{text: 'Description'}"
[editorOptions]="{onInitialized: setFocus}">
</dxi-item>
注意:如果它不起作用,请尝试在 setFocus 方法中添加超时。
...
setFocus(e){
setTimeout(() => {
e.component.focus();
}, 0);
}
...
推荐阅读
- r - abline() 函数未在图中显示一条线
- python - 使用 numpy.tril 提取上方对角线的列表元素
- javascript - 如何过滤掉jquery中不属于搜索结果的项目?
- bash - echo $PATH 显示一个 Python.Framework 目录。重新启动终端后更改被撤销
- kubernetes-helm - Istio 安装:打开存储失败 mkdir data/: 权限被拒绝
- javascript - 尝试替换整个时如何修复 TypeError: t is null?
- javascript - 循环通过承诺
- python - 当我使用 sql 时,我确实收到了不推荐使用的警告
- python - 如何根据匹配的子字符串从一个列表创建多个列表?
- python - 无法运行“抓取报价”