所以我有一个表单,它将数据提交给服务器。提交后,请求中填写了一些属性。我想基于这些属性渲染或不渲染页面上的一些元素。
基本上我想要这样的东西。
<% String productName = "";
if( request.getParameter("productName") != null ){
productName = (String) request.getParameter("productName");
}
%>
<input type="text" id="product" name="Product" readonly="readonly"
value="<%= productName %>" rendered="#{<%= productName %> not empty}"/>
这可以实现吗?
答案 0 :(得分:0)
我不知道,我真的理解你的问题,但如果我是,我想你已经回答了这个问题:)
只需将输入文本元素放入条件中,因此如果productName不为null,则显示它,否则不显示。
如果这不是您的问题的正确答案,请更具体。
答案 1 :(得分:0)
我认为您需要根据productName
等参数的值隐藏或显示一些输入字段。你所写的内容是正确的,但你需要做一些修改才能达到这个目的,如下所示:
<%
String productName = (String) request.getParameter("productName");
if( productName != null && productName.length() > 0){
%>
<input type="text" id="product" name="Product" value="<%= productName %>" readonly="readonly"/>
<%
}
%>
愿这对你有所帮助。
答案 2 :(得分:0)
我建议您使用JavaServer Pages Standard Tag Library或Expression Language代替 Scriplet ,它更易于使用且不易出错。
使用${param.productName}
从请求中获取参数值,如下所示:
<c:if test="${not empty param.productName}">
<input type="text" id="product" name="Product" readonly="readonly" value="${param.productName}"/>
</c:if>