jos*_*t91 4 html java forms jsp
这是我发生的事情.我有一个.jsp文件.但是,我有两种形式,在这些表单中有多个输入.
检测一个表单是否已提交而不是另一个表单的最佳方法是什么?这是一个例子:我有这样的形式:
<form name = "login" action="index.jsp" method="get">
Username: <input id="username" name="username" type="text"/><br/>
Password: <input id="password" name="password" type="password"/>
<input type="submit" Value="Login" ></input>
</form>
Run Code Online (Sandbox Code Playgroud)
如果单击该按钮,我想运行此代码:
String username = request.getParameter("username");
String password = request.getParameter("password");
if((username!= null && !username.trim().equals("")) && (password != null && !username.trim().equals(""))) {
DBentry DBentry=new DBentry();
boolean flag = DBentry.isTaken(username);
if(flag) {%><script type="text/javascript">alert("Login Successful!");</script><%
}
else { %><script type="text/javascript">alert("Unrecognized username. Please register!");</script><% }
}
else { %><script type="text/javascript">alert("Please enter both a username and password!");</script><% }
Run Code Online (Sandbox Code Playgroud)
再向下,我会有一些完全相同的东西,但提交一个不同的形式.谢谢!
为提交按钮指定一个唯一的名称.它成为请求参数名称.这样你就可以检查是否HttpServletRequest#getParameter()没有返回null.
例如
<input type="submit" name="login" Value="Login" />
...
<input type="submit" name="somethingelse" Value="Something else" />
Run Code Online (Sandbox Code Playgroud)
同
if (request.getParameter("login") != null) {
// Login form submitted.
}
else if (request.getParameter("somethingelse") != null) {
// Something else submitted.
}
Run Code Online (Sandbox Code Playgroud)
与具体问题无关,业务逻辑不属于JSP,而属于Servlet.我也开始研究它.这使您可以将表单提交到不同的URL.此外,您应该使用POST方法,而不是GET方法.