ラジオボタンでフォームを送信しています。フォームを送信した後、そのラジオボタンをチェックしたい。基本的に私はページ上でいくつかの検索プロセスを行っています。コードを確認してください。
私のjspで。
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%
String buttonvalue = (String) request.getParameter("radio");
%>
<%= buttonvalue %>
<form method="post" action="SearchServlet">
<script type='text/javascript'>
var button = "<%= buttonvalue %>";
if(button == "one")
{
alert("1");
document.getElementById("rdone").checked = true;
document.getElementById("rdtwo").checked = false;
document.getElementById("rdthree").checked = false;
}
else if(button == "two")
{
document.getElementById("rdone").checked = false;
document.getElementById("rdtwo").checked = true;
document.getElementById("rdthree").checked = false;
}
else if(button == "three")
{
alert("3");
document.getElementById("rdone").checked = false;
document.getElementById("rdtwo").checked = false;
document.getElementById("rdthree").checked = true;
alert("2");
}
else
{
alert("4");
}
</script>
<input id="rdone" type="radio" name="radio" value="one"/>
<input id="rdtwo" type="radio" name="radio" value="two"/>
<input id="rdthree" type="radio" name="radio" value="three"/>
<input type="submit" value="Submit"/>
</form>
</body>
</html>
そしてサーブレットで。
protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try
{
System.out.println(request.getParameter("radio"));
RequestDispatcher dispatcher = request.getRequestDispatcher("/radiobutton.jsp");
System.out.println("--------------"+request.getParameter("radio"));
dispatcher.forward(request, response);
}
finally
{
out.close();
}
}
すべて正常に動作しています。しかし、Javaスクリプトエラーが発生しています。次のスクリーンショットを確認してください。この Java スクリプトが原因で、正確な出力が得られません。