Jsp 如何将cn.replace(“cn=”,“cn”)打印为;输入值>;使用EL
我正在转换我的jsp代码:Jsp 如何将cn.replace(“cn=”,“cn”)打印为;输入值>;使用EL,jsp,jstl,el,Jsp,Jstl,El,我正在转换我的jsp代码: <% for (int i = 0; i < list.size(); i++) { Entry var = (Entry) list.get(i); out.println(var.getCn().replace("cn=", "")); String cn = var.getCn(); out.println("<form method=\"get\" action=\"C
<%
for (int i = 0; i < list.size(); i++) {
Entry var = (Entry) list.get(i);
out.println(var.getCn().replace("cn=", ""));
String cn = var.getCn();
out.println("<form method=\"get\" action=\"Controller\">"
+ "<input type =\"hidden\" name=\"act1\" value = \"" + cn.replace("cn=", "") + "\">"
+ "<button type=\"submit\" name=\"act\" value=\"SHOW\" id=\"act\" >Show</button>"
}
首先删除下一行:
它正在覆盖
至于具体的问题,您可以使用单引号来表示EL中的字符串
请注意,在javabean属性上,您不必像${item.getCn()}
中那样指定整个方法名。您只需使用${item.cn}
另见:
与具体问题无关,还请注意,如果它涉及用户控制的输入,则仍然容易出现错误,但您最初的scriptlet方法也是如此。我相信您可以像在scriplet上使用cn
一样使用变量项。试着这样做:
value=“${item.replace('cn=','')}”
我不确定JSP中名为item
的两个变量是否会出现问题,您可能需要更改其中一个变量的名称以防万一。这就是全部代码:
<c:forEach var="item" items="${list}">
<p>
<c:out value="${item.getCn()} "></c:out>
<p>
<c:set var="cn" value="${item.getCn()}"></c:set>
<input type ="hidden" name="act1" value ="${cn.replace('cn=', '')}">
<button type="submit" name="act" value="SHOW" id="act">Show</button>
显示
<c:forEach var="item" items="${list}">
<p>
<c:out value="${item.getCn()} "></c:out>
<p>
<c:set var="cn" value="${item.getCn()}"></c:set>
<input type ="hidden" name="act1" value ="${cn.replace('cn=', '')}">
<button type="submit" name="act" value="SHOW" id="act">Show</button>