http://ドメイン/ファイルの指定?名前1=値1&名前2=値2&……アドレスの後に?をつけ、その後に「名前=値」という形で値に名前をつけて既述します。複数の値を受け渡す場合は&記号でつなげます。値は、まぁ半角英数字のテキストならそのままでもいいのですが、記号や2バイト文字などが入るとトラブルを起こすので、通常はURLエンコードというものを使ってエンコードしたものを指定します。
String 変数 = request.getParameter( 値の名前 );こんな具合に呼び出せばいいのです。――では、実際に簡単なサンプルを作って、サーバーとの間でやり取りをしてみましょう。
var s = document.getElementById('input').value;これで、例えばフィールドに「abc」と入力したら、「helo.jsp?param=abc」というアドレスがサーバーに送られます。サーバー側では、JSPのコードでこれを取り出しています。
var url = 'helo.jsp?param=' + encodeURI(s);
window.location.href = url;
String str = request.getParameter("param");これで、変数strに「abc」というテキストが設定されます。後は、<p>パラメータ:<%=str %></p>というようにして取り出した値を出力するだけです。
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
※helo.jsp <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <% String str = request.getParameter("param"); %> <!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=utf-8"> <title>Sample jsp</title> <style> h1 {font-size:16pt; background:#AAFFAA; padding:5px; } </style> <script type="text/javascript"> function doAction(){ var s = document.getElementById('input').value; var url = 'helo.jsp?param=' + encodeURI(s); window.location.href = url; } </script> </head> <body> <h1>Sample jsp page</h1> <p>これはサンプルで用意したページです。</p> <p>パラメータ:<%=str %></p> <input type="text" id="input"> <button onclick="doAction();">Click</button> </body> </html>
次へ >> |