
題名の通りなのですが、なかなかマッチする情報がなく苦戦しております。
お力を貸していただけると幸いです。
実現したいのは、簡単にいえば、
http://www.bang.co.jp/?ID=dp844
このサイトのように、プルダウンで選択したデータを次のページで
表示したいと思っています。ただし表示させるだけではなくて
プルダウンで選択された値を遷移先のフォームのhiddenにセットしたいのです。
javascriptであれこれやっているのですが、3日間たってもできておりません。
例えば、a.htmlのプルダウンで、りんごと選ばれて確認と押したら、
b.htmlに遷移し、画面には、りんごと表示されて、
<input type="hidden" name="name" value="りんご">
こういう形にしたいと思っています。
<a.html>
選択してください。←プルダウン
りんご
みかん
すいか
注文するボタン
<b.html>
果物 りんご←前ページで選択された情報が表示されている
送付先 テキストボックス
確認ボタン
どうかお力添えをお願い致します。
No.2ベストアンサー
- 回答日時:
動きません。
=>
一点不注意ミスしました。
var q = frm.elements["fruit"].options[frm.elements["fruit"].selectedIndex].text);
最後の )は不要、取り去って下さい。
var q = frm.elements["fruit"].options[frm.elements["fruit"].selectedIndex].text;
<input type="hidden" name="name" value="りんご">
document.forms["hoge"].elements["name"].value = q[1];で、
value値は書き換わるはずです。
type="hidden"ですから、目で見ても解りませんが、最初
<input type="hidden" name="name" value="">
としておいても大丈夫です。
ただし、こおいう処理はjavascriptオフにしている人にとっては、
まったく使い物にならなくなってしまいますよ。
大変御礼が遅くなり申し訳ありません。
ソースを参考にさせていただき、動くようになりました。
あとは、アレンジして目的のものを作成しようと思います。
本当にありがとうございます。
>ただし、こおいう処理はjavascriptオフにしている人にとっては、
>まったく使い物にならなくなってしまいますよ。
おっしゃる通りだと思います。本来であればDBから引っ張ってくるように
実装しなければなりませんね。課題です・・・。
No.1
- 回答日時:
本来は、javascriptでどうこうするんじゃなく。
a.htmlがサーバー側にデータをサブミットして、サーバー側で
b.htmlにセットして出力し、ページ遷移するもんですが....
無理やりjavascriptだけでやるなら↓の方法があります。
(遷移先URLに引き渡したいデータを追記して遷移するのです。)
(a.html)
略
<body>
<form action="#">
<select name="fruit">
<option>りんご
<option>みかん
<option>すいか
</select>
<button type="button" onclick="order(this.form);">注文</button>
</form>
<script type="text/javascript">
function order(frm){
var q = frm.elements["fruit"].options[frm.elements["fruit"].selectedIndex].text);
location.href = "b.html" + "?" + encodeURIComponent(q);
}
</script>
</body>
</html>
(b.html)
略
<body>
<form name="hoge">
<input type="hidden" name="name" value="りんご">
<form>
<script type="text/javascript">
if('undefined' !== typeof window.addEventListener)
window.addEventListener('load',func,false);
else if ('undefined' !== typeof window.attachEvent)
window.attachEvent('onload',func);
function func(){
if(location.search){
var str = decodeURIComponent(location.search);
var q = str.split("?");
document.forms["hoge"].elements["name"].value = q[1];
}
}
</script>
</body>
</html>
ご回答いただきありがとうございます。感謝申し上げます。
なるほど、どのように考えればうまくいくのかヒントが頂けました。
が・・・上記のようにやったのですが、動きません。
また大変恐縮なのですが(間違っていたら申し訳ありません)、b.htmlで
<input type="hidden" name="name" value="りんご">
と書かれているのですが、このvalue値は、前画面のa.htmlで選択された
ものをセットするので、固定でソースで記載できないと思っています。
もう少し頑張ってみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
jQueryのdatepickerの日付が選...
-
VBScriptでpingを実行(ブラウザ...
-
子ウィンドウを閉じるとき、親...
-
現在時刻を表示させたい!
-
プルダウンで選択された値を別...
-
return trueとreturn falseの用...
-
Selectボックスの幅を自動で広...
-
onchangeイベントを強制的に発...
-
RegularExpressionValidatorの...
-
クリックされた罫表セルの行番...
-
チェックボックス付きのテーブ...
-
ASP.NETでNAME属性を固定にしたい
-
JavaScript ログアウト処理
-
【jQuery】input nameの文字列...
-
sessionの値でボタンを活性・非...
-
ラジオボタンにタブインデック...
-
submitした値を返したい
-
JavaScriptによる自動計算フォ...
-
setIntervalの間隔を途中で変更...
-
selectを変更不可にしたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
TextBoxに半角数字以外を入れた...
-
【Javascript】(テキストボッ...
-
tabindexの取得
-
jQueryのdatepickerの日付が選...
-
IF文でタグの値を確認する
-
マイナスなら赤字で表示したい...
-
javascriptのちょっとした動作...
-
現在時刻を表示させたい!
-
Javascript キー入力より、フォ...
-
JavaScriptで作ったアプリが正...
-
ページ間で変数を保持したい
-
mouseover 時の連続処理につき...
-
表示したいだけなんですけど…
-
ラジオボタンによる表示、非表...
-
テキストエリアに履歴を残したい
-
クリック→フォーカスのある場所...
-
HTMLファイル同士での値渡し
-
どちらかひとつのテキストボッ...
-
開いたサブウインドウから値を...
-
AjaxZip3.zip2addr IE8でエラー
おすすめ情報