おはようございます。みずおちです。
アプリの作成がうまくいかず、ここ3日ぐらいずっと試行錯誤しています。
ボタンのチェックで栄養素の値を計算する所までは出来たのですが、
計算した値を次のページに送ってグラフを作成する予定なのですが、
計算した値をvalue値に代入出来ずに悩んでおります。
教えてgooに出してるので教えてもらえると良いのですが。
<label><input type="checkbox" name="c" value="牛肉">牛肉</label>
<label><input type="checkbox" name="c" value="豚肉">豚肉</label>
<label><input type="checkbox" name="c" value="鶏肉">鶏肉</label>
<label><input type="checkbox" name="c" value="牛レバー">牛レバー</label>
<label><input type="checkbox" name="c" value="豚レバー">豚レバー</label>
<label><input type="checkbox" name="c" value="鳥レバー">鳥レバー</label>
<label><input type="checkbox" name="c" value="ハム">ハム</label>
<label><input type="checkbox" name="c" value="ソーセージ">ソーセージ</label>
<label><input type="checkbox" name="c" value="お米">お米</label>
<label><input type="checkbox" name="c" value="お餅">お餅</label>
<div class="a" id="calorie"></div>
<div class="a" id="protein"></div>
<div class="a" id="lipid"></div>
<div class="a" id="carbohydrate"></div>
<div class="a" id="calcium"></div>
<div class="a" id="iron"></div>
<div class="a" id="zinc"></div>
<div class="a" id="magnesium"></div>
<div class="a" id="folic_acid"></div>
<div class="a" id="vitamin_a"></div>
<div class="a" id="vitamin_d"></div>
<div class="a" id="vitamin_e"></div>
<div class="a" id="vitamin_k"></div>
<div class="a" id="vitamin_b1"></div>
<div class="a" id="vitamin_b2"></div>
<div class="a" id="vitamin_c"></div>
<div class="a" id="dietary_fiber"></div>
<script type="text/javascript">
var c = document.getElementsByName( "c" );
var a = document.getElementsByClassName( "a" );
var v={
'牛肉' :[371,14.4,32.9,0.2,4,1.5,3,14,5,24,0.4,1.1,13,0.05,0.12,1,0]
,'豚肉' :[263,19.3,19.2,0.2,4,0.3,1.6,15,1,6,0.1,0.3,3,0.69,0.15,1,0],
'鶏肉' :[200,16.2,14,0,5,0.4,1.6,19,11,39,0.1,0.2,53,0.07,0.18,3,0],
'牛レバー' :[132,19.6,3.7,3.7,5,4,3.8,17,1000,11000,0,0.3,1,0.22,3,30,0],
'豚レバー' :[128,44.88,7.48,5.5,11,28.6,15.18,20,1782,13000,2.86,0.88,0,0.75,7.92,44,0],
'鳥レバー' :[111,18.9,3.1,0.6,5,9,3.3,19,1300,14000,0.2,0.4,14,0.38,1.8,20,0],
'ハム' :[196,16.5,13.9,13,10,0.5,1.1,19,2,0,0.6,0.3,3,0.6,0.1,50,2.5],
'ソーセージ' :[321,13.2,28.5,3,7,0.8,1.4,11.7,1,0,0.5,0.3,1,0.26,0.13,10,0],
'お米' :[356,6.1,0.9,77.1,5,0.8,1.4,23,12,0,0,0.1,0,0,0.02,0,0.5],
'お餅' :[235,4.2,0.8,50.3,7,0.2,1.4,16.9,7,0,0,0.1,0,0.05,0.02,0,1.05],
}
function myfunc(){
var s = [0,0.0,0.0,0.0,0,0.0,0.0,0.0,0,0,0,0.0,0,0.00,0.00,0,0.00];
for( var i = 0; i < c.length; i++ ){
var checkbox=c[i];
if( checkbox.checked ){
for( var k in s ){
s[k]+=v[checkbox.value][k];
s[k]=Math.round( s[k]*1000 )/1000;
}
}
}
for( var k in s ){
var id=a[k].getAttribute( "id" );
document.getElementById( id ).innerText = id + " : " + s[k];
}
}
window.onload = function(){
for( var i = 0; i < c.length; i++ ){
c[i].addEventListener( 'change', myfunc );
}
}
</script>
<form name="sendform" action="result.php" method="get">
<input type="submit" value="結果を送信">
<input type="hidden" name="calorie" value="">
<input type="hidden" name="protein" value="">
<input type="hidden" name="lipid" value="">
<input type="hidden" name="carbohydrate" value="">
<input type="hidden" name="calcium" value="">
<input type="hidden" name="iron" value="">
<input type="hidden" name="zinc" value="">
<input type="hidden" name="magnesium" value="">
<input type="hidden" name="folic_acid" value="">
<input type="hidden" name="vitamin_a" value="">
<input type="hidden" name="vitamin_d" value="">
<input type="hidden" name="vitamin_e" value="">
<input type="hidden" name="vitamin_k" value="">
<input type="hidden" name="vitamin_b1" value="">
<input type="hidden" name="vitamin_b2" value="">
<input type="hidden" name="vitamin_c" value="">
<input type="hidden" name="dietary_fiber" value="">
</form>