我正在更新用ADF 11.1.1.3编写的应用程序。在几乎所有的屏幕中,我都有可编辑字段的ADF表,每个表都启用了行选择器。
我遇到一个问题,如果用户点击了一个尚未选择的表格行的可编辑字段,则字段行选择器似乎将关闭,然后浏览器将焦点丢失在用户要选择的字段上
根据上面的示例屏幕,当前选择了第二个表格行。但是,如果我在第3行(如结束日期)中的任何可编辑字段内单击,浏览器会将焦点设置在该字段上。但是,然后表行选择侦听器会立即调用,然后将焦点从我最初单击的字段中移除。这发生在任何可编辑的字段类型上。
最令人烦恼的是当我更新表格行的复选框(未选中)时,会立即用原始值覆盖该值。
目前,解决此问题的唯一方法是用户首先选择表格行,然后更新字段数据。
有这个问题的经验吗?我正在考虑一个客户端监听器或价值变化监听器,但想看看你的想法是什么。
谢谢!
更新01: 我为表设置“立即”属性为“true”,仍然得到相同的结果。我将immediate = true应用于父Panel Panel,结果相同。
更新02: 表的Iterator'和Binding的ChangeEventPolicy设置为default(none)。但无论如何,我把它设置为无。结果相同..
更新03: 删除了验证器,结果相同。
答案 0 :(得分:0)
您的选择侦听器是否仍保留“#{bindings.xxx.collectionModel.makeCurrent}”?这用于将当前选定的行设置为当前行,如果已删除它,则表示即使通过单击字段选择行,模型仍然在其迭代器中选择了上一行。