Java jsp request.getParameter
编辑,这仍然是不正确的工作,但我需要设置一个网站的每一页的页面类型。该页面类型需要一些java检查,并根据页面类型执行代码。 问题是,if-else语句没有正确执行。没有发生任何事情,因为参数似乎未放置。 设置页面类型的主页面:Java jsp request.getParameter,java,jsp,Java,Jsp,编辑,这仍然是不正确的工作,但我需要设置一个网站的每一页的页面类型。该页面类型需要一些java检查,并根据页面类型执行代码。 问题是,if-else语句没有正确执行。没有发生任何事情,因为参数似乎未放置。 设置页面类型的主页面: <div id="DYK_area"> <jsp:include page="/imgs/random_dyk.jsp" flush="true"> <jsp:param name="Page_type" value="prenatal
<div id="DYK_area">
<jsp:include page="/imgs/random_dyk.jsp" flush="true">
<jsp:param name="Page_type" value="prenatalOverviewArea"></jsp:param>
</jsp:include>
</div>
正在检查代码的位置
<% String pageType = request.getParameter("page_type")==null?"": request.getParameter("page_type");
String image_name="";
if(pageType.equals("prenatalOverviewArea")){
int random = (int )(Math.random() * 10 + 1);
image_name= "/images/did_you_know/dyk_p_" + random + ".png";
}
else if(pageType.equals("prenatalNorm")){
int random = (int )(Math.random() * 25 + 1);
image_name= "/images/did_you_know/dyk_p_" + random + ".png";
}
else if(pageType.equals("overviewArea")){
int random = (int )(Math.random() * 20 + 1);
image_name= "/images/did_you_know/dyk_" + random + ".png";
}
else if(pageType.equals("overviewNorm")){
int random = (int )(Math.random() * 45 + 1);
image_name= "/images/did_you_know/dyk_" + random + ".png";
}
if(!image_name.equals("")){
%>
<img id="dyk_random" src="<%=image_name%>"/>
<%}%>
"/>
您正在使用类型
变量从请求参数获取值,但如果您使用页面类型
像这样包含JSP
在包含的JSP上
“/>
我不确定/imgs/random\u dyk.jsp中的代码是否正确。您使用变量Page_类型,尽管它不存在
您应该在前面的request.getParameter(“Page_type”)行初始化它代码>如下所示:
<%! String xxx = request.getParameter("Page_type"); %>
那么
<% if(xxx.equals("prenatalOverviewArea")){
...
这就是有效的方法,谢谢大家,至少你们让我离得更近了
<div id="DYK_area">
<jsp:include page="/imgs/random_dyk.jsp" flush="true">
<jsp:param name="page_type" value="prenatalOverviewArea"></jsp:param>
</jsp:include>
</div>
<%@ page contentType="text/html; charset=UTF-8" language="java" errorPage="" %>
<% String pageType = request.getParameter("page_type")==null?"": request.getParameter("page_type");
String image_name="";
if(pageType.equals("prenatalOverviewArea")){
int random = (int )(Math.random() * 10 + 1);
image_name= "/images/did_you_know/dyk_p_" + random + ".png";
}
else if(pageType.equals("prenatalNorm")){
int random = (int )(Math.random() * 25 + 1);
image_name= "/images/did_you_know/dyk_p_" + random + ".png";
}
else if(pageType.equals("overviewArea")){
int random = (int )(Math.random() * 20 + 1);
image_name= "/images/did_you_know/dyk_" + random + ".png";
}
else if(pageType.equals("overviewNorm")){
int random = (int )(Math.random() * 45 + 1);
image_name= "/images/did_you_know/dyk_" + random + ".png";
}
if(!image_name.equals("")){
%>
<img id="dyk_random" src="<%=image_name%>"/>
<%}%>
"/>
什么是Page\u type
?请求。getParameter
读取参数,但不会自动将其分配给变量。请改用类似的方式:String type=request.getParameter(“Page\u type”)
并在您的条件中使用类型
变量。我正在尝试将页面类型设置为我所在的页面,以便if语句将查看要运行的代码。我有0 exp和java,因此这是全新的={>)同样,在使用这样的scriptlet时,在比较字符串
对象时不要使用==
操作符。使用equals
方法代替。=
或eq
在JSP表达式语言中没有问题,但在scriptlet中没有问题。这些是很好的提示,但显示内容没有任何变化。我知道现在关于java的知识太少了,我可能需要一个这样的工作示例。相关:。顺便说一句,停止使用scriplets,它们的使用是非常不鼓励的,而是使用EL和JSTL。更多信息:这看起来像是一个打字错误。不幸的是,这对代码没有多大作用(感谢tho,我确实从这个响应tho!中学到了一点东西)。我对我的示例做了一些更改,但基本相同。-1:这不会解决OP的问题,请注意,基本上这是他/她已经在做的。-1:OP已经在这里做了:String type=request.getParameter(“页面类型”)
。我做了一些调整,但仍然没有正常工作。我没有看到行字符串pageType=request.getParameter(“page\u type”)==null?”:request.getParameter(“page\u type”);
<% if(xxx.equals("prenatalOverviewArea")){
...
<div id="DYK_area">
<jsp:include page="/imgs/random_dyk.jsp" flush="true">
<jsp:param name="page_type" value="prenatalOverviewArea"></jsp:param>
</jsp:include>
</div>
<%@ page contentType="text/html; charset=UTF-8" language="java" errorPage="" %>
<% String pageType = request.getParameter("page_type")==null?"": request.getParameter("page_type");
String image_name="";
if(pageType.equals("prenatalOverviewArea")){
int random = (int )(Math.random() * 10 + 1);
image_name= "/images/did_you_know/dyk_p_" + random + ".png";
}
else if(pageType.equals("prenatalNorm")){
int random = (int )(Math.random() * 25 + 1);
image_name= "/images/did_you_know/dyk_p_" + random + ".png";
}
else if(pageType.equals("overviewArea")){
int random = (int )(Math.random() * 20 + 1);
image_name= "/images/did_you_know/dyk_" + random + ".png";
}
else if(pageType.equals("overviewNorm")){
int random = (int )(Math.random() * 45 + 1);
image_name= "/images/did_you_know/dyk_" + random + ".png";
}
if(!image_name.equals("")){
%>
<img id="dyk_random" src="<%=image_name%>"/>
<%}%>