访问 c:if 标签内的 JSP 代码?
Access JSP code inside c:if tags?
我正在尝试根据您在另一页的下拉列表中选择的名称,在 table 中显示来自数据库的数据。但我无法理解您如何比较标签内的 jsp 字符串?
我的下拉列表是从另一个 .jsp 页面上的数据库填充的,名为 "dropselect"。我知道您可以在 <%%> 中获取名称,但在标签中无法访问?
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="newcss.css" rel="stylesheet" type="text/css">
<title>JSP Page</title>
</head>
<body>
<table>
<tr>
<th>ID</th>
<th>E-mail</th>
<th>Full name</th>
<th>SQL</th>
<th>Collection</th>
<th>Req</th>
<th>OS</th>
<th>Exam Project</th>
<th>Attendance</th>
<th>Total</th>
</tr>
<c:forEach var="user" items="${listUsers.rows}">
<%
String selected = (String)request.getParameter("dropselect");
%>
<c:if test="${user.fullname eq selected}">
<tr>
<td id="id"><c:out value="${user.id}"/></td>
<td><c:out value="${user.email}"/></td>
<td><c:out value="${user.fullname}"/></td>
<td id="midt"><c:out value="${user.sp_sql}"/></td>
<td id="midt"><c:out value="${user.sp_coll}"/></td>
<td id="midt"><c:out value="${user.sp_req}"/></td>
<td id="midt"><c:out value="${user.sp_os}"/></td>
<td id="midt"><c:out value="${user.sp_examp}"/></td>
<td id="midt"><c:out value="${user.sp_att}"/></td>
<td id="midt"><c:out value="${user.total}"/></td>
</tr>
</c:if>
</c:forEach>
%>
</table>
<form method="post" action="index.jsp">
<input type="submit" value="Tilbage">
</form>
</body>
如果你的参数 dropselect 不为空,你可以试试这个代码
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="newcss.css" rel="stylesheet" type="text/css">
<title>JSP Page</title>
</head>
<body>
<table>
<tr>
<th>ID</th>
<th>E-mail</th>
<th>Full name</th>
<th>SQL</th>
<th>Collection</th>
<th>Req</th>
<th>OS</th>
<th>Exam Project</th>
<th>Attendance</th>
<th>Total</th>
</tr>
<c:forEach var="user" items="${listUsers.rows}">
<c:if test="${user.fullname eq param.dropselect}">
<tr>
<td id="id"><c:out value="${user.id}"/></td>
<td><c:out value="${user.email}"/></td>
<td><c:out value="${user.fullname}"/></td>
<td id="midt"><c:out value="${user.sp_sql}"/></td>
<td id="midt"><c:out value="${user.sp_coll}"/></td>
<td id="midt"><c:out value="${user.sp_req}"/></td>
<td id="midt"><c:out value="${user.sp_os}"/></td>
<td id="midt"><c:out value="${user.sp_examp}"/></td>
<td id="midt"><c:out value="${user.sp_att}"/></td>
<td id="midt"><c:out value="${user.total}"/></td>
</tr>
</c:if>
</c:forEach>
</table>
<form method="post" action="index.jsp">
<input type="submit" value="Tilbage">
</form>
</body>
我正在尝试根据您在另一页的下拉列表中选择的名称,在 table 中显示来自数据库的数据。但我无法理解您如何比较标签内的 jsp 字符串? 我的下拉列表是从另一个 .jsp 页面上的数据库填充的,名为 "dropselect"。我知道您可以在 <%%> 中获取名称,但在标签中无法访问?
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="newcss.css" rel="stylesheet" type="text/css">
<title>JSP Page</title>
</head>
<body>
<table>
<tr>
<th>ID</th>
<th>E-mail</th>
<th>Full name</th>
<th>SQL</th>
<th>Collection</th>
<th>Req</th>
<th>OS</th>
<th>Exam Project</th>
<th>Attendance</th>
<th>Total</th>
</tr>
<c:forEach var="user" items="${listUsers.rows}">
<%
String selected = (String)request.getParameter("dropselect");
%>
<c:if test="${user.fullname eq selected}">
<tr>
<td id="id"><c:out value="${user.id}"/></td>
<td><c:out value="${user.email}"/></td>
<td><c:out value="${user.fullname}"/></td>
<td id="midt"><c:out value="${user.sp_sql}"/></td>
<td id="midt"><c:out value="${user.sp_coll}"/></td>
<td id="midt"><c:out value="${user.sp_req}"/></td>
<td id="midt"><c:out value="${user.sp_os}"/></td>
<td id="midt"><c:out value="${user.sp_examp}"/></td>
<td id="midt"><c:out value="${user.sp_att}"/></td>
<td id="midt"><c:out value="${user.total}"/></td>
</tr>
</c:if>
</c:forEach>
%>
</table>
<form method="post" action="index.jsp">
<input type="submit" value="Tilbage">
</form>
</body>
如果你的参数 dropselect 不为空,你可以试试这个代码
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="newcss.css" rel="stylesheet" type="text/css">
<title>JSP Page</title>
</head>
<body>
<table>
<tr>
<th>ID</th>
<th>E-mail</th>
<th>Full name</th>
<th>SQL</th>
<th>Collection</th>
<th>Req</th>
<th>OS</th>
<th>Exam Project</th>
<th>Attendance</th>
<th>Total</th>
</tr>
<c:forEach var="user" items="${listUsers.rows}">
<c:if test="${user.fullname eq param.dropselect}">
<tr>
<td id="id"><c:out value="${user.id}"/></td>
<td><c:out value="${user.email}"/></td>
<td><c:out value="${user.fullname}"/></td>
<td id="midt"><c:out value="${user.sp_sql}"/></td>
<td id="midt"><c:out value="${user.sp_coll}"/></td>
<td id="midt"><c:out value="${user.sp_req}"/></td>
<td id="midt"><c:out value="${user.sp_os}"/></td>
<td id="midt"><c:out value="${user.sp_examp}"/></td>
<td id="midt"><c:out value="${user.sp_att}"/></td>
<td id="midt"><c:out value="${user.total}"/></td>
</tr>
</c:if>
</c:forEach>
</table>
<form method="post" action="index.jsp">
<input type="submit" value="Tilbage">
</form>
</body>