我为UI组件使用了primeface,并且必须通过使用CSS样式临时设置布局单元的背景,

 .layoutCustomStyle.ui-layout-unit-content
  {
     background-image: url('resources/images/backgrnd.png');
  }


layoutunit的ID为“ layoutId”,使用的样式类为“ layoutCustomStyle”

在xhtml中

<p:layoutUnit position="top" id= "layoutId" styleClass ="layoutCustomStyle">
</p:layoutUnit>


但是我想要的是动态添加背景图像。该图像将由文件浏览器选择,因此,我无法为此添加单独的类并使用bean。

UIViewRoot view = FacesContext.getCurrentInstance().getViewRoot();
UIComponent comp= view.findComponent("layoutId");
Map<String, Object> attrMap = comp.getAttributes();
String className = (String)attrMap.get("styleClass");


使用这个我可以设置和获取类名,但是如何动态更改属性“ background-image:”?

希望问题清楚。任何帮助表示赞赏。

提前致谢,
飞马座

最佳答案

使用style属性而不是styleClass

09-16 12:08