プロが教えるわが家の防犯対策術!


第一選択のセレクトメニューで項目Aを選択。
第二選択で項目Aの数値を取得。

第一選択のセレクトメニューで項目Bを選択。
第二選択で項目Bの数値を取得。
(第二選択はセレクトかテキスト入力の予定です)

取得した値をAもしくはBに代入。
計算式(A*2)+(2/B)
もしくは
計算式a (a*2)+10
計算式b (b*2)+10
と言う風に選択項目によって代入位置を変更したいです。

計算式も代入する値も多くあるのでセレクトメニューで選択して
その位置を変更したいのですが、どのようにしたらいいのでしょうか?
他に良い方法とかあるものなんでしょうか??

初心者でサンプル例文を切り張り修正でしか作れません。(-_-;)
専門用語とか詳しく説明されても解らないと思うので、
例文だけでも書いていただいたらありがたいです。
あとはなんとか例文を参考に自分で調べて構文の仕組みを理解するのでお願いします。<(_ _)>

A 回答 (3件)

javascriptはともかくselectメニューくらいは例示してみては?


いまのままだと何をどうしたいのかさっぱり・・・

この回答への補足

あぁ、解りにくい説明だったみたいですね^ ^;
すいません。

補足日時:2008/02/12 21:28
    • good
    • 0

<html><body>


<select name="ahaha" id="num">
<option value="1">1</option>
<option value="10">10</option>
<option value="100">100</option>
</select>
<input type="button" value="Aに代入"
onClick="document.getElementById('dta').value = document.getElementById('num').value;";
>
<input type="button" value="Bに代入"
onClick="document.getElementById('dtb').value = document.getElementById('num').value;";
>
<br>

A=<input type="text" id="dta">
B=<input type="text" id="dtb">
<br>
<select name="ahaha" id="siki">
<option value="1">(A*2)+(2/B)</option>
<option value="2">(a*2)+10</option>
<option value="3">(b*2)+10</option>
</select>
<input type="button" value="計算" onClick="
var a = document.getElementById('dta').value;
var b = document.getElementById('dtb').value;
var ans = 0;
switch( document.getElementById('siki').value ){
case '1':
if(b==0) {alert( 'Error!' ); return; }
ans = (a*2)+(2/b); break;
case '2':
ans = (a*2)+10; break;
case '3':
ans = (b*2)+10; break;
}
document.getElementById('kotae').value = ans;
">
答え<input type="text" id="kotae">
</body></html>
これって問題を理解する方が難しいかも!?
これを望んでいるとは思わないし、何がどうだか・・・
でっ!どぉ?

この回答への補足

あぁ、解りにくい説明だったみたいですね^ ^;
すいません。

例えばハンバーガー1個のコストを計算するのに1個当たりの食材、
人件費、設備費、雑費を決まった計算式に沿って求めたいんです。
食材はトマト(国産・中国産)、牛肉(国産・豪産)、タマネギ等とあり、産地・価格で異なり多岐にわたり、1個当たりの価格は変動します。

なので、まず第一のセレクトメニューで計算したい食材等の項目を選んで連動した第二のセレクト・テキストメニューで価格を入力。
商品によって使う食材の種類も数も変わり、1食材毎に価格入力可能に。
同様に人件費・設備費その他も同じ方式で入力して、合算して最終的に
は1商品のコストを表示したいと思っています。

今一番、どうすればいいか分からないのが第一のセレクトメニュー選択で第二のセレクト・テキストメニュー入力を連動させるかです。
その第一セレクトメニューの選択項目によって代入位置が異なるので・・・。
そこだけでやり方が解れば、あとはなんとかなりそうなんですが。
よろしくお願いします。

補足日時:2008/02/12 20:17
    • good
    • 0

<html><body>


<select id="num" onChange="chg()">
<option value="a">a</option><option value="b">b</option>
</select>

<select id="prc">
<option value="100">cha</option><option value="200">twn</option>
</select>

<script>
function chg(){
if( event.srcElement.value =="b" ){
setVal($('prc').options[0],'jpn',1000);
setVal($('prc').options[1],'usa', 500);
}
if( event.srcElement.value =="a" ){
setVal($('prc').options[0],'cha',100);
setVal($('prc').options[1],'twn',200);
}
}
function $(n){ return document.getElementById(n);}
function setVal(o,d,v){ o.innerHTML=d;o.value=v;}
</script>
第一セレクトメニューの値によって、第二セレクトメニューを
動的に変化させるには?
</body></html>
    • good
    • 0
この回答へのお礼

度々ありがとうございます。
なるほど、納得できました。
こうすれば第二セレクトで値を切り分けて
取得できるんですね。
思いっきり初歩的な勘違いして考えていました。(-_-;)
本当に助かりました。
ありがとうございました。

お礼日時:2008/02/13 11:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!