実現したいこと
ガチガチの初心者です。id=confirmのボタンを押したときに結果が一瞬しか表示されないのですがなぜですか?ご助言お願い致します。
※ソースコードはどの部分を抜粋したらいいのかわからなかったので関連してそうなところをもってきました。また動けばいいやで書いてしまっているので修正できる部分も多々あると思いますm(_ _)m
###該当のソースコード
html
1 <form class="gear"> 2 <span>攻撃ギアが 3 <select id="attackmain"> 4 <option value="0">0</option> 5 </select> 6 . 7 <select id="attacksub"> 8 <option value="0">0</option> 9 </select></span> 10 <span>防御ギアが 11 <select id="deffencemain"> 12 <option value="0">0</option> 13 </select> 14 . 15 <select id="deffencesub"> 16 <option value="0">0</option> 17 </select> 18 <button type='submit' id='confirm'>確定</button></span> 19 </form> 20<table align="left"> 21 <tbody class="result"> 22 <tr align="left"> 23 <th>自分の武器</th> 24 <th>防御突破の攻撃ギア数</th> 25 <th>相手の武器</th> 26 <th>確定数ずらしの防御数</th> 27 </tr> 28 </tbody> 29 </table>
javascript
1$(function count1() { 2 for (var i = 1; i <= 3; i++) { 3 $('#attackmain,#deffencemain').append($('<option />').val(i).html(i)); 4 } 5}); 6 7$(function count2() { 8 for (var i = 1; i <= 9; i++) { 9 $('#attacksub,#deffencesub').append($('<option />').val(i).html(i)); 10 } 11}); 12$(function() { 13 //tableを作成 14 var weapon = ['わかばシューター', 'スプラシューター', "プライムシューター", ".52ガロン", ".96ガロン", "N-ZAP", "シャープマーカー", "ボールドマーカー", "L3リールガン", "H3リールガン", "デュアルスイーパー", 'スプラスピナー', "バレルスピナー", ]; 15 var weapondamage = ['28', '35', "42", "52", "52", "28", "28", "38", "29", "41", "28", '28', "28", ]; 16 var y = 1 17 for (var i in weapon) { 18 $('.result').append("<tr>"); 19 $('.result').append($('<td />').html(weapon[i])); 20 $('.result').append($("<td id=" + "attack"+ y + "></td>")); 21 $('.result').append($('<td />').html(weapon[i])); 22 $('.result').append($("<td id=" + "deffence" + y+ "></td>")); 23 $('.result').append("</tr>"); 24 y++; 25 } 26 27 $("#confirm").on("click", function() { 28 //form内容を取得 29 var attackmain = $("#attackmain").val(); 30 var attacksub = $("#attacksub").val(); 31 var deffencemain = $("#deffencemain").val(); 32 var deffencesub = $("#deffencesub").val(); 33 //form値から計算 34 var a = attackmain * 10 + attacksub * 3; 35 var d = deffencemain * 10 + deffencesub * 3; 36 var A = ((0.99 * a) - Math.pow(0.09 * a, 2)) / 100; 37 var D = ((0.99 * d) - Math.pow(0.09 * d, 2)) / 100; 38 // 39 var z = 1 40 for (var x in weapondamage) { 41 var weapondama = weapondamage[x] * (1 + A); 42 $("#attack" + z).append($('<td />').html(weapondama)); 43 z++; 44 } 45 }); 46});
回答1件
あなたの回答
tips
プレビュー