
早速ですが、現在PHP&Javascriptでサイト構築中です。
その中で、コンボボックス1で選択した条件でコンボボックス2の
選択肢を動的に変化させたいのですが、画面ロード時に全てのパターン
を読み込むのではなく(これはサンプルを見つけました)、
コンボ1選択時にクエリを発行してコンボ2の選択肢を取得して
反映させることは可能でしょうか。
可能であれば、具体的な実現方法をご教示願えませんでしょうか。
未熟故、的外れな質問でしたらご指摘下さい。
よろしくお願いいたします。
A 回答 (1件)
- 最新から表示
- 回答順に表示

No.1
- 回答日時:
<html>
<head>
<script type="text/javascript" src="prototype.js"></script>
</head>
<body>
<form>
<select id="a" onChange="changeOption('b',this.value)">
<option value="0" selected>好みは?</option>
<option value="1">普通</option>
<option value="2">やばい</option>
</select><br>
<select id="b">
</select>
<script>
function changeOption(id,val){
var tm = (new Date()).getTime();
new Ajax.Request('test.php', { method:'get', parameters:'menu='+val+'&c='+tm, onSuccess:function(oj){retData(id,oj.responseText); } });
}
function retData(id,oj){
var dt=oj.split('\n');
var txt=[];
var val=[];
for(var i=0;i<dt.length;i++){
var buf=dt[i].split('\t');
val.push(buf[0]);
txt.push(buf[1]);
}
setSelectOption(id,txt,val,val[0],val[0]);
}
function setSelectOption(id_name ,text_array, value_array, default_value, select_value){
var o = document.getElementById( id_name );
while( o.hasChildNodes() ) o.removeChild( o.lastChild );
for(var i=0, n, mx = text_array.length; i<mx; i++){
var n = new Option( text_array[i], value_array[i],(default_value==value_array[i]),(select_value==value_array[i]));
try{ o.add( n, null) } catch( ex ){ o.add( n ); }
}
}
</script>
---------------
test.php
<?php
$menu=$_GET['menu'];
$ret ='';
switch( $menu ){
case '1':
$ret="0\t指定してください\n1\t男\n2\t女"; break;
case '2':
$ret="0\t指定してください\n1\tオカマ\n2\tオナベ"; break;
default:
$ret="0\tありません"; break;
}
echo $ret;
pipi様ありがとうございます。
ぱっと見、理解できませんでした;;
実際のものに落とし込み、ジックリ解析したいと存じます。
まずはお礼まで
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PDFを(htmlのように)無限に縦...
-
正規表現で、特定の文字列を含...
-
php コールバック関数
-
ナイトボットのAliasについて
-
これってなんの電話かわかりま...
-
VBAでクイズゲームの作り方
-
以下のURL入れますか?皆さんは↓
-
画像のドットの部分が抜けてい...
-
Chinapost こよパズルどう動か...
-
非同期通信で掲示板を作る際の...
-
非同期通信を使うタイミングが...
-
PYTHONのtkinterについて
-
Pythonのtkinterについて
-
Pythonを勉強する道のり
-
Pythonを無料(安価)で学ぶ方...
-
RPA(PowerAutomate)の実装について
-
ワードでA3横の画面にして、文...
-
入力フォームの値をQRコードで...
-
課題なのですがどなたかコード...
-
自作の地図をグーグルマップの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavascriptからPHPへのAjax通信...
-
jQuery を外部ファイルから呼び...
-
jQueryのblockUIをformのボタン...
-
jQueryで外部テキストファイル...
-
jquery × php × mysql 非同期で...
-
Ajaxでのチャットについて教え...
-
ajaxでPHPにPOST送信して結果デ...
-
JQueryの変数の扱いで弱ってい...
-
Ajax・jQueryでGET時にIE...
-
jQueryを使いformでsubmitした...
-
Ajax・jQueryでGETとPOSTする方法
-
JSONをperlで受け取る方法
-
ajax + PHPによるエラーの返し...
-
Ajax サーバーに負荷かかります...
-
ajaxからphpにpsotしたときの日...
-
Win11 へのRufus と レジストリ...
-
階層別の組織図の自動作成について
-
JavaScriptでtabindexの変更っ...
-
Javascriptを使ってQRコード読...
-
同一ページ移動時ハンバーガー...
おすすめ情報