前提・実現したいこと
金種別を計算するアプリをjavascriptで作りました。
各form値をbuttonのonclickに記載した関数の引数で取得したのですが、余りスマートでないためリンク先のjsファイルで取得したいと思うのですが方法がわかりません。
ボタンクリックでform内の値を取得する方法を教えていただけないでしょうか。
よろしくお願いします。
該当のソースコード
html
1<!doctype html> 2<html class="no-js" lang=""> 3 4<head> 5 <meta charset="utf-8"> 6 <title></title> 7 <meta name="description" content=""> 8 <meta name="viewport" content="width=device-width, initial-scale=1"> 9 10 <link rel="manifest" href="site.webmanifest"> 11 <link rel="apple-touch-icon" href="icon.png"> 12 <!-- Place favicon.ico in the root directory --> 13 14 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" 15 integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous"> 16 17 <meta name="theme-color" content="#fafafa"> 18</head> 19 20<body> 21 22 <style> 23 form dl dt { 24 width: 200px; 25 height: 40px; 26 padding: 10px 0; 27 line-height: 40px; 28 float: left; 29 } 30 31 form dl dd { 32 padding: 10px 0; 33 margin: 0; 34 } 35 36 .box { 37 box-sizing: border-box; 38 width: 150px; 39 height: 40px; 40 margin: 0; 41 padding: 0 10px; 42 } 43 </style> 44 45 <div class="container"> 46 <div class="w-60"> 47 <form class="kinshu"> 48 <dl> 49 <dt>10000円:</dt> 50 <dd><input type="number" name="v10000" class="box">枚</dd> 51 52 <dt>5000円:</dt> 53 <dd><input type="number" name="v5000" class="box">枚</dd> 54 55 <dt>1000円:</dt> 56 <dd><input type="number" name="v1000" class="box">枚</dd> 57 58 <dt>500円:</dt> 59 <dd><input type="number" name="v500" class="box">枚</dd> 60 61 <dt>100円:</dt> 62 <dd><input type="number" name="v100" class="box">枚</dd> 63 64 <dt>50円:</dt> 65 <dd><input type="number" name="v50" class="box">枚</dd> 66 67 <dt>10円:</dt> 68 <dd><input type="number" name="v10" class="box">枚</dd> 69 70 <dt>5円:</dt> 71 <dd><input type="number" name="v5" class="box">枚</dd> 72 73 <dt>1円:</dt> 74 <dd><input type="number" name="v1" class="box">枚</dd> 75 </dl> 76 77 <p><input type="button" class="calc-btn" onclick="calc( 78 v10000.value, 79 v5000.value, 80 v1000.value, 81 v500.value, 82 v100.value, 83 v50.value, 84 v10.value, 85 v5.value, 86 v1.value 87 );" value="計算"></p> 88 89 <dt>合計:</dt> 90 <dd><input type="text" id="totale_value" class="box" readonly="">円</dd> 91 92 </form> 93 </div> 94 </div> 95 96 <script> 97 function calc( 98 v10000, v5000, v1000, v500, v100, v50, v10, v5, v1 99 ) { 100 let total = document.getElementById('totale_value').value = 101 Math.round( 102 (10000 * v10000) + (5000 * v5000) + (1000 * v1000) + (500 * v500) + (100 * v100) + (50 * v50) + (10 * v10) + (5 * v5) + (1 * v1) 103 ); 104 } 105 106 </script> 107 108</body> 109 110</html>
回答2件
あなたの回答
tips
プレビュー