以下是带有表单的示例jsp页面。
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="h.abc" %>
<%
abc p = new abc();
%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form action="abcd.jsp" method="POST">
<input type="hidden" name="<%=p.getName()%>+'Name'" value='y'>
<input type='text' name='<%=p.getName()%>' >
<input type='submit' value='submit'>
</form>
</body>
</html>
这是&#39; h&#39;中的abc课程。 package.Please原谅命名。它仅用于说明目的。
public class abc {
public String name="abc";
public abc()
{
}
public String getName()
{
return name;
}
}
这是abcd.jsp目标页面。我试图获取输入字段的值。
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="h.abc" %>
<%
abc p = new abc();
%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%
String s = p.getName();
out.println(request.getParameter(s+"Name"));
out.println(request.getParameter(s));
%>
</body>
</html>
我无法理解为什么输入字段没有返回&#39; y&#39;作为它的值。它返回null。
答案 0 :(得分:1)
更改第一个jsp中的代码
<input type="hidden" name="<%=p.getName()%>Name" value='y'>
&#13;
答案 1 :(得分:0)
您需要通过调用setAttribute(&#34; you_key&#34;,abcInstance)方法将您的abc实例放入HttpServletRequest&#39;属性中。然后你可以通过调用req.getAttribute(&#34; your_key&#34;)或使用el表达式来获取jsp页面中的abc实例