• 締切済み

別ページからフォームへ移動したときにプルダウンの指定のメニューを自動選

別ページからフォームへ移動したときにプルダウンの指定のメニューを自動選択したいです! メニューページのAというメニューから予約フォームへリンクしたときにフォームのプルダウンを自動で Aメニューを選択した状態で表示したいのですが、どうしたら出来るのかわかりません。 Javascriptかphpでサンプルや参考になるページがありましたら教えてください。

みんなの回答

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.3

クエリに情報を乗せては? 呼び元(メニューページA) <a href="~~/予約フォーム.php?A">予約フォーム</a> 呼び元(メニューページB) <a href="~~/予約フォーム.php?B">予約フォーム</a> 予約フォームphp クエリ(?以降)を読み取ってプルダウンでAやBを選択した状態にする。 参考・・というかこういうのは基礎ですから。 http://www.google.com/search?q=php+%8A%EE%91b&hl=ja なお、Javascriptでも同様の目的を果たす事はできます。

ymgy
質問者

お礼

ありがとうございました。 今回急ぎでしたのでご質問させていただきました。 基礎から勉強したいと思います。

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

ちょこっと作ってみました。Firefox3.6で出来ました。 送信側 ---------------------------------------- <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>MsgTest_S</title> <script type="text/javascript"> var form_window; function form_pop(selection){  window.addEventListener("message", function(ev){   if(ev.origin==location.protocol+"//"+location.hostname){    if(ev.data=="ready")    form_window.window.postMessage(selection,location.protocol+"//"+location.hostname);   }  },false);  if(form_window != null && form_window != undefined)   form_window.close();  form_window = window.open("/MsgTestR.htm","_blank"); } </script> </head> <body> <p> メニュー <ul> <li><a href="javascript:void(0);" onclick="form_pop('A');">A</a></li> <li>B</li><li>C</li> </ul> </p> </body> </html> 受信側(フォーム) ---------------------------------- <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>MsgTest_R</title> <style type="text/css"></style> <script type="text/javascript"> window.addEventListener("load", function(ev){   opener.window.postMessage("ready",location.protocol+"//"+location.hostname); },false); window.addEventListener("message", function(ev){   var menuopt={"A":0,"B":1,"C":2};   if(ev.origin==location.protocol+"//"+location.hostname){    document.getElementById("menu_select").selectedIndex=menuopt[ev.data];   } },false); </script> </head> <body> <form> <select id="menu_select">  <option value="A">A  <option value="B">B  <option value="C" selected>C </select> </form> </body> </html> ※残念ながらIE8は、別Windowにメッセージ送信できませんでした。 HTML5の「Web Storage」なら使えるのかなあ ※見やすくするため全角スペースにしてあります。

ymgy
質問者

お礼

ありがとうございます。 全角を半角にしましたが動作が確認できませんでした… これvalueではなくidで選択することは可能なのでしょうか? valueを日本語にして情報を渡さなくてはいけないので idで選択できるとよいのですが。。 すませんがお時間ありましたらご教授願います。

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

HTML5のクロスドキュメントメッセージングを 応用すればjavascriptだけで出来ると思います。 "A"というメッセージを飛ばして、フォーム側で受信して、選択状態に すればよいかと 参考 http://journal.mycom.co.jp/special/2009/html5-2/005.html

ymgy
質問者

お礼

ありがとうございました。 ちょっと勉強頑張ります。

関連するQ&A