我有一个问题。
我有3个jsp页面。 第一个是带2个按钮的菜单。 当我单击第一个按钮时,我想打开第二个jsp页面。 当我点击第二个按钮时,我想打开第三个jsp页面。
你能帮帮我吗?我必须使用servlet(这不是问题,我知道)?<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form name="TrainerMenu" action="TrainerMenu" method="get">
<h1>Benvenuto in LESSON! Scegli l'operazione da effettuare:</h1>
<input type="button" value="Creazione Nuovo Corso" name="CreateCourse" />
<input type="button" value="Gestione Autorizzazioni"
name="AuthorizationManager" />
</form>
</body>
</html>
答案 0 :(得分:18)
你有几个选择,我将从最简单的方法开始:
1-将输入按钮更改为链接,您可以使用css对它们进行样式设置,使它们看起来像按钮:
<a href="CreateCourse.jsp">Creazione Nuovo Corso</a>
而不是
<input type="button" value="Creazione Nuovo Corso" name="CreateCourse" />
2-使用javascript根据您点击的按钮更改表单的操作:
<input type="button" value="Creazione Nuovo Corso" name="CreateCourse"
onclick="document.forms[0].action = 'CreateCourse.jsp'; return true;" />
3-使用servlet或JSP处理请求并重定向或转发到相应的JSP页面。
答案 1 :(得分:5)
你可以制作那些提交按钮,在你提交表格的servlet中你可以测试按下的按钮的名称并呈现相应的jsp页面。
<input type="submit" value="Creazione Nuovo Corso" name="CreateCourse" />
<input type="submit" value="Gestione Autorizzazioni" name="AuthorizationManager" />
如果TrainerMenu
不为空,则在request.getParameter("CreateCourse")
servlet内部,然后单击第一个按钮,您可以渲染相应的jsp。
答案 2 :(得分:2)
如果你要找的只是导航到第一页的第2页和第3页,请用以下锚元素替换按钮:
<form name="TrainerMenu" action="TrainerMenu" method="get">
<h1>Benvenuto in LESSON! Scegli l'operazione da effettuare:</h1>
<a href="Page2.jsp" id="CreateCourse" >Creazione Nuovo Corso</a>
<a href="Page3.jsp" id="AuthorizationManager">Gestione Autorizzazioni</a>
<input type="button" value="" name="AuthorizationManager" />
</form>
如果出于某种原因需要使用按钮,请尝试以下操作:
<form name="TrainerMenu" action="TrainerMenu" method="get">
<h1>Benvenuto in LESSON! Scegli l'operazione da effettuare:</h1>
<input type="button" value="Creazione Nuovo Corso" name="CreateCourse"
onclick="openPage('Page2.jsp')"/>
<input type="button" value="Gestione Autorizzazioni" name="AuthorizationManager"
onclick="openPage('Page3.jsp')" />
</form>
<script type="text/javascript">
function openPage(pageURL)
{
window.location.href = pageURL;
}
</script>
答案 3 :(得分:1)
只需使用两种形式。
在第一个表单中,action属性将包含第二个jdp页面的名称和第一个按钮。在第二种形式中,将有第二个按钮,其中包含第三个jsp页面的动作属性。
会是这样的:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form name="main1" method="get" action="2nd.jsp">
<input type="submit" name="ter" value="LOGOUT" >
</form>
<DIV ALIGN="left"><form name="main0" action="3rd.jsp" method="get">
<input type="submit" value="FEEDBACK">
</form></DIV>
</body>
</html>
答案 4 :(得分:1)
最简单的方法是使用javascript。
例如,<input type="button" value="load" onclick="window.location='userpage.jsp'" >
答案 5 :(得分:0)
它使用ajax。 然后jsp显示在控制器返回的iframe中以响应请求。
function openPage() {
jQuery.ajax({
type : 'POST',
data : jQuery(this).serialize(),
url : '<%=request.getContextPath()%>/post_action',
success : function(data, textStatus) {
jQuery('#iframeId').contents().find('body').append(data);
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
}
});
}
答案 6 :(得分:0)
如果您想使用按钮,请单击,而不要使用其他方法。您可以通过在按钮上添加location.href
来实现。这是我的使用方式
<button class="btn btn-lg btn-primary" id="submit" onclick="location.href ='/dashboard'" >Go To Dashboard</button>
上面的按钮使用引导程序类进行样式设置。没有样式,最简单的代码将是
<button onclick="location.href ='/dashboard'" >Go To Dashboard</button>
/dashboard
是我的JSP页面,如果您也使用扩展名,则使用/dashboard.jsp