1

ラジオボタンの値を取得する方法を考えていました。2 つのラジオ ボタンを持つフォームがあるとします。ボタンに関連付けられた値を取得したいと思います。ただし、しようとするとnullになります。

フォーム部分

<form method="post" action="insert.jsp" enctype=text/plain>
<table>
<INPUT TYPE="radio" name="command" value="0">Run<INPUT TYPE="radio" NAME="command" VALUE="1">Walk<BR>

Insert.jsp 部分

String sCommand=(String)request.getParameter("command");
out.println(sCommand);

したがって、null が出力されます。

4

2 に答える 2

4

GETの代わりにメソッドを使用するPOSTと、コードが実行されます。enctype(「text/plain」を使用する場合)また、正しいPOST メソッドについては @divyabharathi からの回答も参照してください。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form method="get" action="insert.jsp" enctype=text/plain>
<INPUT TYPE="radio" name="command" value="0"/>Run
<INPUT TYPE="radio" NAME="command" VALUE="1"/>Walk
<INPUT TYPE="submit" VALUE="submit" />
</form>
<%
String sCommand = request.getParameter("command");
out.println(sCommand);
%>
</body>
</html>

scripletsただし、JSP で使用しないことを強くお勧めします。JSPファイルで Java コードを回避する方法をご覧ください。

于 2013-04-03T05:46:41.717 に答える
1

nullによって返される値は、jsp でrequest.getParameter("command")使用しているためです。enctype="plain/text"

HTTP ポスト リクエストのデフォルトのエンコーディング (サーブレットが期待するもの) は、application/x-www-form-urlencoded です。テキスト/プレーンではありません。

于 2013-04-03T05:39:48.023 に答える