如何在p:selectOneMenu的所选项目上显示图像

Reidestis

我正在尝试实现一个高级selectOneMenu(PrimeFaces)以基于其标志图标选择语言环境。图标显示在列表中,但不显示所选项目(在展示柜中也是如此)。我该怎么办?

<p:selectOneMenu id="mySOMId" value="#{localeBean.locale}" var="mySOMVar" converter="#{localeConverter}" >
    <f:selectItems 
        value="#{myBean.locales}" 
        var="localeSIVar"
        itemLabel="#{localeSIVar.language}" 
        itemValue="#{localeSIVar}" />
    <p:column style="text-align: center;" >
        <h:graphicImage library="default" height="20" name="img/#{mySOMVar.language}.svg" />
    </p:column>
</p:selectOneMenu>

我可以看到f:selectItems有一个itemLabelEscaped属性,可以使用属性来输出<img>tag itemLabel,但是我不知道该放在那个属性src

谢谢

BalusC

您可以使用#{resource['library:name']}语法来打印资源的URL,如如何在Facelets模板中引用CSS / JS /图像资源中所述。

因此,鉴于您实际上想使用

<h:graphicImage library="default" height="20" name="img/#{localeSIVar.language}.svg" />

内的itemLabel,并且的itemLabelEscaped属性<f:selectItems>设置为true,则可以使用以下语法作为的值itemLabel

itemLabel="&lt;img height='20' src='#{resource['default:img/' += localeSIVar.language += '.svg']}' /&gt;"

笔记:

  • 您只能在此处使用纯HTML,而不能使用JSF组件。
  • 为了提高可读性,最好在纯HTML中将单引号用作属性值分隔符,然后将其声明为双引号包围的属性。当然,您也可以使用&quot;而不是这些单引号。
  • 如上所述,单引号在EL表达式中仍然可以正常工作,无需重新转义。您甚至可以在EL表达式中使用双引号,但是代码编辑器中的语法突出显示此处很容易失败,从而可能导致不必要的混乱。
  • +=从EL 3.0开始,操作员是新手。如果您仍在使用旧版本的EL,请转到如何在EL中连接字符串?在EL中串联字符串的替代方法(然后将其重新用作变量)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

如何在RecyclerView上正确突出显示所选项目?

来自分类Dev

如何在TableView中的所选项目上显示上下文菜单

来自分类Dev

如何从dataTable内部的selectOneMenu中删除所选项目?

来自分类Dev

如何在TreeView上为所选项目设置颜色

来自分类Dev

如何在更大尺寸的另一个控件中显示列表框所选项目(图像)

来自分类Dev

图像未显示在所选选项上

来自分类Dev

显示所选选项的图像

来自分类Dev

如何从列表框所选项目中获取要在 Picturbox 中显示的图像

来自分类Dev

如何在Angular的Bootstrap下拉标题中显示所选项目?

来自分类Dev

与ViewPager同步在RecyclerView上显示所选项目

来自分类Dev

与ViewPager同步在RecyclerView上显示所选项目

来自分类Dev

Android Espresso:如何在自定义微调器所选项目布局上匹配文本?

来自分类Dev

如何在所选项目上设置组合框的背景颜色?

来自分类Dev

如何在p:selectManyCheckbox中显示带有图像的项目

来自分类Dev

如何在下拉菜单上显示与所选文本不同的选项文本?

来自分类Dev

如何在QcomboBox中显示项目取决于第二个QcomboBox所选项目

来自分类Dev

如何显示所选项目的附加值?

来自分类Dev

如何显示仅指向所选项目的箭头?

来自分类Dev

如何显示所选项目的附加值?

来自分类Dev

PrimeNg/Angular:如何显示所选项目的标签?

来自分类Dev

如何根据所选项目在 BottomNavigationView 上加载片段?

来自分类Dev

如何在QTreeView中获取所选项目

来自分类Dev

如何在组合框类中设置所选项目?

来自分类Dev

如何在textview中获取alertdialg所选项目?

来自分类Dev

如何在日历中保存所选项目

来自分类Dev

如何在SelectListItem中正确设置所选项目?

来自分类Dev

如何在textview中获取alertdialg所选项目?

来自分类Dev

如何在KnockoutJS中获取所选项目的ID

来自分类Dev

如何在 React Native 的 RadioGroup 中获取所选项目?

Related 相关文章

  1. 1

    如何在RecyclerView上正确突出显示所选项目?

  2. 2

    如何在TableView中的所选项目上显示上下文菜单

  3. 3

    如何从dataTable内部的selectOneMenu中删除所选项目?

  4. 4

    如何在TreeView上为所选项目设置颜色

  5. 5

    如何在更大尺寸的另一个控件中显示列表框所选项目(图像)

  6. 6

    图像未显示在所选选项上

  7. 7

    显示所选选项的图像

  8. 8

    如何从列表框所选项目中获取要在 Picturbox 中显示的图像

  9. 9

    如何在Angular的Bootstrap下拉标题中显示所选项目?

  10. 10

    与ViewPager同步在RecyclerView上显示所选项目

  11. 11

    与ViewPager同步在RecyclerView上显示所选项目

  12. 12

    Android Espresso:如何在自定义微调器所选项目布局上匹配文本?

  13. 13

    如何在所选项目上设置组合框的背景颜色?

  14. 14

    如何在p:selectManyCheckbox中显示带有图像的项目

  15. 15

    如何在下拉菜单上显示与所选文本不同的选项文本?

  16. 16

    如何在QcomboBox中显示项目取决于第二个QcomboBox所选项目

  17. 17

    如何显示所选项目的附加值?

  18. 18

    如何显示仅指向所选项目的箭头?

  19. 19

    如何显示所选项目的附加值?

  20. 20

    PrimeNg/Angular:如何显示所选项目的标签?

  21. 21

    如何根据所选项目在 BottomNavigationView 上加载片段?

  22. 22

    如何在QTreeView中获取所选项目

  23. 23

    如何在组合框类中设置所选项目?

  24. 24

    如何在textview中获取alertdialg所选项目?

  25. 25

    如何在日历中保存所选项目

  26. 26

    如何在SelectListItem中正确设置所选项目?

  27. 27

    如何在textview中获取alertdialg所选项目?

  28. 28

    如何在KnockoutJS中获取所选项目的ID

  29. 29

    如何在 React Native 的 RadioGroup 中获取所选项目?

热门标签

归档