0

値の合計を合計する方法を知っている人はいますか。その合計に 1072 をかけたいと思います。ちょっとやってみました。しかし、それがうまくいかなかった..

したがって、マークされている 4 つの値の合計が計算される JavaScript コードが必要です。

   <html>   
    <head>
        <h2>Inboedelwaardemeter</h2>
        <script type="text/javascript">
            function sumCheckedRadioButtons() {
                  var sum = 0;
                  $('input[type=radio]:checked').each(function(i, el) {
                    sum += Number($(el).val());
                  });
                  return sum;
                }
                $('#show_sum').on('click', function() {
                    alert(sumCheckedRadioButtons());
                });
        </script>
    </head> 
    <body>
        <br>
        <b> Leeftijd hoofdkostwinner:</b>
        <form name="mijnForm1">
        <br>
            <input type="radio" id="getal1" name="leeftijd"
                value="22" checked> 35 jaar en jonger
              <br>    
            <input type="radio" id="getal2" name="leeftijd"
                value="29"> 36 t/m 50 jaar
              <br>
            <input type="radio" id="getal3" name="leeftijd"
                value="38"> 51 jaar en ouder
              <br>
            <br>
        <b> Samenstelling huishouden:</b>
        <br>
        <form name="mijnForm2">
            <input type="radio" id="getal4" name="huishouden"
                value="22" checked> Alleenstaande
              <br>    
            <input type="radio" id="getal5" name="huishouden"
                value="29"> Echtpaar / Samenwonende
              <br>
              <br>  
        <b> Netto maandinkomen hoofdkostwinner</b>
        <br>
        <form name="mijnForm3">
            <input type="radio" id="getal6" name="hoofdkostwinner"
                value="22" checked> Tot en met €1000,-
              <br>    
            <input type="radio" id="getal7" name="hoofdkostwinner"
                value="29"> €1001,- tot en met €2000,-
              <br>
            <input type="radio" id="getal8" name="hoofdkostwinner"
                value="38"> €2001,- tot en met €3000,-
             <br>
            <input type="radio" id="getal9" name="hoofdkostwinner"
                value="38"> €3001,- of hoger
            <br>
            <br>
            <b> Oppervlakte woning</b>
            <br>
        <form name="mijnForm4">
            <input type="radio" id="getal10" name="Oppervlakte"
                value="22" checked> tot en met90m²
              <br>    
            <input type="radio" id="getal1" name="Oppervlakte"
                value="29"> 91m² tot en met 140m²
              <br>
            <input type="radio" id="getal12" name="Oppervlakte"
                value="38"> 141m² tot en met 190m²
             <br>
            <input type="radio" id="getal13" name="Oppervlakte"
                value="38"> 191m² of meer
            <br>
        </form>
        <input type="button" id="show_sum" value="Show Sum" />
    </body>
 </html>   
4

2 に答える 2

2

jQuery を使用すると、チェックされているすべてのラジオ ボタンを選択し、それらの数値を合計に追加するだけです。

function sumCheckedRadioButtons() {
  var sum = 0;
  $('input[type=radio]:checked').each(function(i, el) {
    sum += Number($(el).val());
  });
  return sum;
}

これは動作中の jsFiddle です([結果] ペインの下部にある [合計を表示] ボタンを押します)。

于 2013-01-30T16:44:31.663 に答える
1

以下は、バニラ js ソリューションです。

function checkTotal() {
   var a =  document.querySelectorAll('input:checked'); 
   var total = 0;
   for(var x=0; x < a.length;x++){
      total += a[x].value * 1;
   }
   alert(total);
}

注: queryselector は (比較的) 最新のブラウザーでのみ使用できますhttp://caniuse.com/queryselector

例: http://jsfiddle.net/2eU4E/1/

于 2013-01-30T16:41:29.160 に答える