我正在更新用ADF 11.1.1.3编写的应用程序。几乎在我的所有屏幕中,我都有带有可编辑字段的ADF表,并且每个表都启用了行选择器。
我遇到了一个问题,如果用户单击尚未选定的表行的可编辑字段,则字段行选择器将显示为“关闭”,然后浏览器将失去对用户要选择的字段的关注。
根据我上面的示例屏幕,当前选择了第二个表行。但是,如果我单击第3行中的任何可编辑字段(如结束日期),浏览器将焦点设置在该字段上。但随后,Table选择监听器立即调用,然后将焦点从我最初单击的字段中移除。这发生在任何可编辑的字段类型上。
最烦人的是,当我更新表行的复选框(未选中)时,该值将立即用其原始值重写回来。
目前,解决这个问题的唯一方法是用户首先选择表行,然后更新字段数据。
在这个问题上有什么经验吗?我在考虑一个客户端监听器或价值改变监听器,但我想看看你的想法是什么。
谢谢!
更新01: I为表设置“”属性为"true“,结果仍然相同。我将immediate=true应用于父面板框,结果相同。
更新02:将表的Iterator‘和绑定的ChangeEventPolicy设置为默认(无)。但无论如何我都没把它设置好。同样的结果。
更新03:删除了验证器,结果相同。
发布于 2014-10-03 13:00:52
您的选择侦听器是否仍然保留"#{bindings.xxx.collectionModel.makeCurrent}"?这用于将当前选定的行设置为当前行,如果已删除此行,则意味着即使通过单击字段来选择行,模型在其迭代器中仍然选择了前一行。
https://stackoverflow.com/questions/17194469
复制相似问题