下記のセレクトボックスがあります。
print "<select name='atai'>";
print "<option value='abc'>abc</option>";
print "<option value='123'>123</option>";
print "<option value='xyz'>xyz</option>";
print "</select>";
現在、選択されている値を $int の変数に入力
したいのですが、どうしたらいいのでしょうか。
例えば、$int=・・・・・・; というふうに代入
文でできることなのでしょうか。
この場合、現在表示されているCGIで、
$int が、abc か 123 か xyz か知りたい
のです。
No.6ベストアンサー
- 回答日時:
こんなことでしょうか。
IE6のみ確認。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=SHIFT_JIS">
<title>連動select</title>
<script type="text/javascript">
<!--
B = new Array();
B[0] = new Array("a","i","u","e","o");
B[1] = new Array("ka","ki","ku","ke","ko");
B[2] = new Array("sa","si","su","se","so");
B[3] = new Array("ta","ti","tu","te","to");
B[4] = new Array("na","ni","nu","ne","no");
function select(){
var No=document.getElementsByTagName('select')[0].selectedIndex;
var SELECT = document.getElementsByTagName('select')[1];
var OPTION = SELECT.getElementsByTagName('option');
var cc = OPTION.length;
if(cc != 0){for( k = 0 ; k < cc ; k++ ){SELECT.removeChild(OPTION[0]);}}
for(k = 0;k < B[No].length;k++){
var OPT = document.createElement ('option');
var OPTTEXT = document.createTextNode(B[No][k]);
SELECT.appendChild(OPT);
OPT.setAttribute('value',B[No][k]);
OPT.appendChild(OPTTEXT);
}
}
//-->
</script>
</head>
<body onload="select()">
<select onchange="select()">
<option value='a'>a</option>
<option value='ka'>ka</option>
<option value='sa'>sa</option>
<option value='ta'>ta</option>
<option value='na'>na</option>
</select>
<select></select>
</div>
</body>
</html>
No.4
- 回答日時:
サーバ(CGI)側とクライアント側に分けて、順にどういう処理になればよいか書いてもらえると助かります。
1)クライアントからCGIへページ表示のリクエスト
2)CGIが1)のリクエストを元にページを出力
3)クライアントがselectで何らかのoptionを選択
4)クライアントがsubmitする
5)CGIが4)で送信されたデータを受け取る
とあるわけですが。
5)で受け取るのは問題ないわけで、今回の要求は3)で受け取りたいということであってますか?
3)でCGI側が選択されたoptionの値を知るのは、基本的に不可能です。
やろうとするなら、選択されたときにjavascriptでCGIに送信する方法でしょう。
やりたかったのは、selectで選択されたoptionの値に応じて同ページの他の部分の値などを変更したいってことでしょうか?
この回答への補足
nebelさんの言われる通り、(3)で受け取りたい
ケースになります。クライアントがセレクトでoptionで選択した
タイプによって、もうひとつのセレクトボックスの選択肢が異なってくるということです。
JavaScriptでの行うときは、どういう記述になりますか?教えて下さい。
No.3
- 回答日時:
(1)サーバー
print "<select name='atai'>";
(2)クライアント(ブラウザ)
サーバーから受けたHTMLデータを表示、セレクトフィールドの選択と変更
----------
| abc ▽ |
|--------|
| 123 |
| xyz |
----------
(2)' ブラウザの送信ボタンを押す
(3)サーバー
クライアントから送信されたデータを受信
で、(2)'の送信ボタンを押したタイミングで良いのでしょうか?
それとも(3)のサーバーがデータを受信したタイミングでよいのでしょうか?
(2)であれば、Perlでは不可能です。
JavaScriptなどを使って下さい。
(3)であれば、たとえば<select>ではなく
<input type="text" name="atai">
で表示して、クライアントにて入力してもらった場合の値は取得出来ますか?
この回答への補足
talooさん、ありがとうございます。補足します。
(2)のセレクトフィールドに変化があったときに
違うセレクトフィールドに表示させる内容を変化
させたいのです。
例えば、「abc」の場合、あ行の文字あ、い、う、え、お、から選択、
「123」の場合、数字1、2、3、4、5から選択、
「xyz」の場合、アルファベットa、b、c、d、eから選択、
という風に、sumitを押す前に、もうひとつの選択
フィールドを選択したいのです。
No.2
- 回答日時:
TMEspionです。
No.1さん同様、補足が無ければ、どストライクな回答は困難かと思われます。
でもとりあえず一例として、
<input type="submit">を押して送信した内容を
「$value = $FORM{'$name'};」とかに格納するタイプのプログラムであれば、「$FORM('atai')」の中に「'abc'」、「'123'」、「'xyz'」のどれかが入ると思います。
全部こっちで想定した上での一例なので、全然的外れかと思いますが、一例ね。あくまで一例。
No.1
- 回答日時:
仕様要求がよくわかりません。
書かれているセレクトボックスを出力し、クライアントのブラウザで表示されますね。
その後、ユーザーがセレクトボックスで選択する。
その後、submitボタンを押してサーバに送信しますね。
どこの段階で選択されている値を変数に代入したいのでしょうか?
普通に考えるとsubmitされて送信されてきたデータをみて、選択されているoptionの値だと思うのですが。
送信されてきたデータの受け取りは、自作ですか?
もし自作ならば、どういうロジックで受け取っているのかわからなければ具体的なアドバイスは無理です。
それともCGI.pmとかcgi-bin.plなどをお使いですか?
この回答への補足
セレクトボックスが複数あって、最初のセレクトボッスを選択
した時に、次のセレクトボックスの選択するカテゴリを可変で
選択したいということです。なので、タイミング的には次の
セレクトボックスを押す時になります。
セレクトボックスの連動をなぜ使わないかというと、
それを使った場合、次のCGIへなぜかデータが渡らない
からです。すみません、補足になっているでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript console.logがどうしても2つ機能しないのでアドバイスをくださいお願いします 2 2022/07/07 22:13
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
- JavaScript 電車の運賃を出すプログラムを作っています。 2 2022/06/22 09:36
- JavaScript JavascriptからSQLへ繋ぎ方が分からない 3 2022/07/07 00:27
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- JavaScript 2段階プルダウンで1段階目の選択を終えた後に選択ボックスを見えなくしたい 2 2022/07/05 21:58
- JavaScript 中百舌鳥駅と深井駅を入れ替えて選択しても同じ挙動にしたいです。 2 2022/06/24 18:45
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プルダウン 項目が多いので先頭...
-
jspに組込んだJavaScript でjava文
-
セレクトの値を取得できない
-
CSVファイルを読みこみ、プルダ...
-
jQuery セレクトボックスで選択...
-
Selectの中身をfor文で入れる
-
html selectの内容を初期値に戻す
-
現在時刻を取得してフォームのs...
-
onFocusOutが複数回呼ばれる!
-
プルダウンとテキストの連動
-
selectメニューのselectedの位...
-
<textarea>にプルダウンを表示...
-
int select(int n, fd_set *rea...
-
HTMLコンボボックスへの項目追加
-
return trueとreturn falseの用...
-
テキストボックス入力を半角英...
-
【jQuery】input nameの文字列...
-
二つの入力欄に、同時に同じ文...
-
onchangeイベントを強制的に発...
-
<input>の選択肢をプルダウンメ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プルダウン 項目が多いので先頭...
-
Selectボックスの幅を自動で広...
-
jQuery セレクトボックスで選択...
-
Selectの中身をfor文で入れる
-
html selectの内容を初期値に戻す
-
CSVファイルを読みこみ、プルダ...
-
JQuery selectが反映されない
-
セレクトの値を取得できない
-
セレクトを全て選択されていな...
-
セレクトメニューで選択された...
-
ブラウザの戻るボタンを押した...
-
javascriptでselectボックスの<...
-
リストボックスの項目の順番を...
-
現在時刻を取得してフォームのs...
-
onFocusOutが複数回呼ばれる!
-
セレクトボックスで現在選択さ...
-
【javascript・PHP】プルダウン...
-
document.form で nullまたは...
-
プルダウンで現在の年月日を取...
-
onchange等のイベントハンドラ...
おすすめ情報