<c:param>中的参数如何使用页面定义的var类型的数据
时间: 2023-11-28 07:47:50 浏览: 45
在 JSP 中,可以使用 JSTL 标签库来访问页面定义的 var 类型的数据。
假设在页面中定义了一个名为 "person" 的 var 类型的数据,可以使用 JSTL 的 <c:set> 标签将其存储到一个变量中,例如:
```
<c:set var="myPerson" value="${person}"/>
```
然后,可以在 <c:param> 标签中使用这个变量作为值,例如:
```
<c:url value="/myPage.jsp">
<c:param name="personId" value="${myPerson.id}"/>
</c:url>
```
在上面的例子中,<c:url> 标签用于构造一个 URL,其中包含一个名为 "personId" 的参数。该参数的值是从 "myPerson" 变量中获取的 "id" 属性的值。
相关问题
<c:param>怎么传递给其他页面
<c:param>标签通常用于在页面之间传递参数。要将参数传递给其他页面,请确保在<a>标记中使用<c:param>标记来指定参数的名称和值。例如:
```
<a href="other_page.jsp">
<c:param name="paramName" value="paramValue"/>
Go to other page
</a>
```
在目标页面(在这个例子中是"other_page.jsp"),您可以使用<c:out>标签来访问传递的参数。例如,要访问名称为"paramName"的参数,请在目标页面中使用以下代码:
```
<c:out value="${param.paramName}"/>
```
请注意,"paramName"在这里必须与<c:param>标记中指定的名称相同。您还可以使用request.getParameter()方法来获取参数的值。
5.编一个urltest.jsp。通过<c:url>标签及其子标签<c:param>,形成一个新的url:test.jsp?value=100,然后用<c:redirect>转到新的url,并显示下列结果。
### 回答1:
以下是urltest.jsp的代码:
```jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html; charset=UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<title>URL Test</title>
</head>
<body>
<c:url value="test.jsp" var="url">
<c:param name="value" value="100"/>
</c:url>
<c:redirect url="${url}"/>
<h1>Redirected to ${url}</h1>
</body>
</html>
```
该页面使用了JSTL的<c:url>标签及其子标签<c:param>,将参数value的值设置为100,并生成一个新的url。然后使用<c:redirect>标签将页面重定向到该url,并在页面上显示重定向后的url。
### 回答2:
urltest.jsp的代码如下:
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>URL测试</title>
</head>
<body>
<%-- 声明参数value --%>
<c:set var="value" value="100" />
<%-- 生成新的URL --%>
<c:url var="newUrl" value="test.jsp">
<c:param name="value" value="${value}" />
</c:url>
<%-- 重定向到新的URL --%>
<c:redirect url="${newUrl}" />
<%-- 显示结果 --%>
<h1>重定向到新的URL: ${newUrl}</h1>
</body>
</html>
```
通过`<c:param>`标签,我们可以设置参数value的值为100。在`<c:url>`标签中,我们将该参数连接到了url `test.jsp`上,生成了新的url。
随后,我们使用`<c:redirect>`标签将页面重定向到新的url,并在页面上显示了结果。在重定向后,新的url为`test.jsp?value=100`。
以上就是通过`<c:url>`标签及其子标签`<c:param>`形成一个新的url,并使用`<c:redirect>`标签转到新的url的过程以及结果的展示。
### 回答3:
编写一个urltest.jsp页面,通过<c:url>标签和其子标签<c:param>来形成一个新的URL,URL为:test.jsp?value=100。然后使用<c:redirect>标签将页面重定向到新的URL,并显示下列结果。
首先,创建urltest.jsp页面,使用<c:url>标签和<c:param>子标签来生成新的URL,设置参数value的值为100。示例如下:
```jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:url var="newUrl" value="test.jsp">
<c:param name="value" value="100" />
</c:url>
<c:redirect url="${newUrl}" />
```
上述代码中,首先使用<c:url>标签创建一个变量newUrl,指定值为test.jsp。然后,使用<c:param>子标签在newUrl中添加name为value、value为100的参数。
接下来,使用<c:redirect>标签将页面重定向到newUrl。
当页面重定向到新的URL:test.jsp?value=100时,test.jsp页面将可以获取到传递的参数value的值为100,并进行相应的处理和展示结果。在test.jsp页面中,可以通过request对象来获取参数的值,示例如下:
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%
String value = request.getParameter("value");
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test Page</title>
</head>
<body>
<h1>参数value的值为: <%= value %></h1>
</body>
</html>
```
在上述代码中,通过request.getParameter("value")方法获取到参数value的值,并通过<%= value %>将其展示在页面上。
当页面重定向到新的URL:test.jsp?value=100后,页面将显示"参数value的值为: 100",表示成功传递参数并成功展示结果。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
给下面代码增加分页功能,要求细致,逻辑清楚,<form action="./../selectNews" method="post"> <input type="text" name="key" id="key" placeholder="请输入标题"/> <input type="submit" value="查询"/> 发布新闻 返回主页 </form> 新闻编号 新闻标题 <%-- 新闻内容 --%> 新闻类别 发布人 发布时间 状态 是否头条 操作 <c:forEach items="${newslist}" var="u"> ${u.nid} ${u.title} <%-- ${u.content} --%> ${u.type} ${u.userName} ${u.pubTime} <c:choose> <c:when test="${u.state==0}">未审核</c:when> <c:when test="${u.state==1}">审核通过</c:when> <c:otherwise>未通过</c:otherwise> </c:choose> <c:choose> <c:when test="${u.top==0}">否</c:when> <c:otherwise>是</c:otherwise> </c:choose> <c:choose> <c:when test="${user.rule==1}"> 查看 修改 删除 审核 </c:when> <c:when test="${user.rule==0 && user.uid==u.uid}"> 查看 修改 删除 </c:when> <c:otherwise> 查看 </c:otherwise> </c:choose> </c:forEach>
listfile.jsp页面如下: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!DOCTYPE HTML> <html> <head> <title>下载文件显示页面</title> </head> <body> <c:forEach var="me" items="${fileNameMap}"> <c:url value="${pageContext.request.contextPath}/servlet/DownLoadServlet" var="downurl"> <c:param name="filename" value="${me.key}"></c:param> </c:url> ${me.value}下载
</c:forEach> </body> </html> 将 <c:forEach var="me" items="${fileNameMap}"> <c:url value="${pageContext.request.contextPath}/servlet/DownLoadServlet" var="downurl"> <c:param name="filename" value="${me.key}"></c:param> </c:url> ${me.value}下载
</c:forEach>修改成类似<form action="${pageContext.request.contextPath}/servlet/UploadHandleServlet" enctype="multipart/form-data" method="post"> <input type="submit" value="下载">的类型,点击<input type="submit" value="下载">按钮,要跳转到用于处理文件下载的Servlet,DownLoadServlet,即${pageContext.request.contextPath}/servlet/DownLoadServlet,要完整代码
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
listfile.jsp页面如下: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!DOCTYPE HTML> <html> <head> <title>下载文件显示页面</title> </head> <body> <c:forEach var="me" items="${fileNameMap}"> <c:url value="${pageContext.request.contextPath}/servlet/DownLoadServlet" var="downurl"> <c:param name="filename" value="${me.key}"></c:param> </c:url> ${me.value}下载
</c:forEach> </body> </html> 将 <c:forEach var="me" items="${fileNameMap}"> <c:url value="${pageContext.request.contextPath}/servlet/DownLoadServlet" var="downurl"> <c:param name="filename" value="${me.key}"></c:param> </c:url> ${me.value}下载
</c:forEach>修改成类似<form action="${pageContext.request.contextPath}/servlet/UploadHandleServlet" enctype="multipart/form-data" method="post"> <input type="submit" value="下载">的类型,点击<input type="submit" value="下载">按钮,要跳转到用于处理文件下载的Servlet,DownLoadServlet,即${pageContext.request.contextPath}/servlet/DownLoadServlet,要完整代码
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)