如何将jsf bean值传递给css calc函数?

时间:2015-07-02 11:38:05

标签: css jsf el

我在样式类中使用三元运算符。我无法将bean值传递给表的宽度设置。

这是我的代码:

<table style="#{manageBean.taskDetail.effort1 &lt; manageBean.taskDetail.effort2 ? 'width:calc((manageBean.taskDetail.effort1/manageBean.taskDetail.effort2)*100%);background-color:blue;' : 'width:10%;background-color:red;'}">

如果条件满足,则应根据计算显示宽度。以上计算不起作用。

任何帮助?

1 个答案:

答案 0 :(得分:1)

计算无效,因为您正在嵌套EL表达式,这在JSF 2.2上是不可能的。因此,calc(css)字面上取manageBean.taskDetail.effort1,换句话说就像字符串一样。 你可以在JS上进行这个计算,或者构建一个计算css样式的Bean方法。一个例子:

查看

<table style="#{dummyController.style}">
    <!-- content -->
</table>

<强>豆

public String getStyle() {
    return number1 > number2? "width:calc((" + (number1 / number2) + ")*100%);background-color:blue;" : "width:10%;background-color:red;";
}