【发布时间】:2019-03-01 19:55:34
【问题描述】:
在这里,我试图在单击 js 函数后单击“submitAction”按钮,调用 DoSubmit() 也调用了 servlet 的 doPost() 方法,但在 doPost() 方法中,request.getParameter("submitAction") 返回 null我期望它应该在哪里返回按钮值“验证 OTP”或“重新发送 OTP”,具体取决于单击的按钮。
以下是JSP代码:
<html>
<body>
<script>
function DoSubmit()
{
var btn = document.getElementById("submitAction").value;
alert("in side the DoSubmit method and OTP is : "+myOTP+ " btn clicked: "+btn);
$.ajax({
type: "POST",
url : 'myservlet',
data : {
myOTP : myOTP
},
success : function(myOTP) {
$('#ajaxGetUserServletResponse').text(myOTP);
}
});
return true;
}
</script>
<form name="submitForm" action="/myservlet">
<div id="dialog" title="Enter the OTP">
<p id="message">Enter the One Time Password</p>
<p id="note"> OTP code generated will be valid for 10 Mins<p>
<input type="text" style="margin-left:10px" valign="right" maxlength=4 size=4 id="myotp" title="OTP" name="myOTP">
<input type="submit" name="submitAction" value="Verify OTP" onclick="DoSubmit()"/>
<input type="submit" name="submitAction" value="Resend OTP"onclick="DoSubmit()"/>
<button id="back">Back</button>
<div id="ajaxGetUserServletResponse" style="display: none;"></div>
</div>
</form>
</body>
</html>
Servlet 类:
@WebServlet("/myservlet")
public class GetUserServlet extends HttpServlet
{
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
String submitAction = request.getParameter("submitAction");
System.out.println(" "+submitAction);
}
}
【问题讨论】:
-
` String submitAction = request.getParameter("submitAction");` 错误