4

我有一个jsp文件,像这样:

<html>
<head>
     <script type="text/javascript">
       var type=<bean:write name="class" property="type" />  
     </script> 

     <style type="text/css">
        .td-type1
        {
            width: 10mm;
        }
        .td-type2
        {
            width: 20mm;
        }
    </style>
</head>
<body>
    <table>
        <tr>
            <td class="td-type1">
            </td>
        </tr>
    </table>
</body>
</html>

我的问题是:如何根据类型值动态更改 css?例如,如果 type 等于 2,则 td-type2 的 css 类应该用于 td 标签。我应该使用 .properties 文件来保存所有配置或多 css 文件还是...?

4

1 回答 1

9

您可以将请求属性的值附加到classJSP 中的属性:

<td class="td-type<%=type%>">

附带说明一下,强烈建议不要使用 scriptlet(JSP 中的 java 代码)。请改用 JSTL 和 EL。在这个问题中,您将了解为什么以及如何避免 JSP 文件中的 Java 代码

<td class="td-type${type}">

或者,如果您想实现类似 if-else 的构造,例如:

<c:choose>
    <c:when test="${type eq "2"}">
        <c:set var="varclass" value="td-type2"/>
    </c:when>
    <c:otherwise>
        <c:set var="varclass" value="td-type1"/>
    </c:otherwise>
</c:choose>
<td class="${varClass}">
于 2013-02-08T15:37:38.753 回答