如何添加Oracle ADF selectOneChoice的tab索引?如何添加Oracle ADF的selectOneChoice的选项卡索引?
1
A
回答
4
不幸的是,你不能在标准的JSF级别上控制它。至少,不是标准组件和渲染器。指定的tabindex
将应用于所有生成的元素(我不需要ADF,但我想它是单选按钮)。
您可以考虑覆盖与af:selectOneChoice
关联的渲染器,以便它接受一个附加属性tabindexes
或接受逗号分隔的索引字符串,并将其应用于随后生成的单选按钮上。
您需要查阅有问题的组件的ADF文档,以确定它属于哪个组件系列以及它正在使用哪个渲染器。一旦发现,你基本上需要创建一个类,它会覆盖renderOption()
方法(至少,它在JSF标准com.sun.faces.renderkit.html_basic.RadioRenderer
类中正好使用该名称)。你基本上需要复制的方法逻辑(不知道ADF,但基本的JSF实现是开源的)和下面的逻辑添加到它:
String tabindexes = (String) component.getAttributes().get("tabindexes");
if (tabindexes != null) {
String[] tabindexItems = tabindexes.split("\\s*,\\s*");
String indexKey = component.getClientId(context) + "_currentTabIndex";
Integer index = (Integer) component.getAttributes().get(indexKey);
if (index == null || index == tabindexItems.length) {
index = 0; // Note this thus restarts at 0 if there are more selectitems than tabindexes. Just to be on the safe side.
}
String tabindex = tabindexItems[index];
component.getAttributes().put(indexKey, ++index); // We need to save it for the next generated input element.
writer.writeAttribute("tabindex", tabindex, "tabindex");
}
如果您在faces-config.xml
声明自定义呈现如下
<render-kit>
<renderer>
<component-family>put here the component family of af:selectOneChoice</component-family>
<renderer-type>put here the renderer type of af:selectOneChoice</renderer-type>
<renderer-class>com.example.YourCustomRadioRenderer</renderer-class>
</renderer>
</render-kit>
那么你可以使用额外的属性tabindexes
如下:
<af:selectOneChoice .... >
<f:attribute name="tabindexes" value="1,3,5,7,2,4,6,8" />
,你甚至可以把一些EL它,这样就可以得到它作为来自bean属性的(生成的)字符串。
<af:selectOneChoice .... >
<f:attribute name="tabindexes" value="#{bean.tabindexes}" />
希望这给了新的见解。
相关问题
- 1. Adf selectonechoice添加项目
- 2. 从ADF中的selectOneChoice获取选定值,而不是索引
- 3. selectOneChoice in ADF
- 4. Oracle-adf selectOneChoice在treeTable滚动上重置
- 5. 如何填充oracle ADF中的selectOneChoice控件?
- 6. JSF/ADF selectOneChoice shortDesc大小
- 7. jQuery选项卡 - 获取之前选定选项卡的索引
- 8. Visual Studio添加引用.NET选项卡和浏览选项卡
- 9. 在现有“添加”选项卡之前添加动态引导选项卡
- 10. 相对选项卡索引
- 11. 从选项卡控件中删除某些选项卡并在特定索引处添加选项卡C#
- 12. jquery-ui选项卡 - 添加选项卡
- 13. 设置选项卡索引
- 14. Aurelia动态添加引导选项卡
- 15. 如何清除旧选项卡并在选项卡上添加新选项卡
- 16. 如何设置选项卡容器中的活动选项卡而不使用选项卡的索引?
- 17. 选项卡栏选定索引更多选项卡
- 18. 如何将选项卡项目添加到现有的选项卡控件wpf
- 19. Twitter的引导 - 动态添加/删除选项卡和选项卡内容
- 20. 如何在Drupal中添加选项卡?
- 21. 如何在选项卡下添加expandablelistview?
- 22. 如何动态添加jquery选项卡
- 23. 如何在JPanel上添加选项卡
- 24. 如何将选项卡添加到TabView
- 25. 在关闭gwt中的一个选项卡后选项卡索引问题
- 26. jQuery UI选项卡选择索引
- 27. 如何在引导选项卡中添加关闭图标?
- 28. Oracle ADF的加成问题
- 29. ASP.NET C#GridView选项卡索引问题
- 30. 如何将选项卡添加到Xcode上的选项卡式应用程序
你想设置一个selectOneChoice的选项卡索引,或者你想使用组件内的选项卡? – Bozho 2009-12-22 22:55:48
我只是试图添加selectOneChoice的选项卡索引。非常感谢您的帮助。 – 2009-12-22 23:52:14