Postingan lainnya
Kelas Premium!
Belajar bikin website dari nol sekarang
Gunakan kupon "lebihcepat" untuk diskon 25%!
Kelas Premium!
Belajar Javascript untuk website
Gunakan kupon "mulaijs" untuk diskon 75 ribu!
Sum Radio Button Value using Javascript
Permisi gan, ane lagi ngembangin javascript dibawah tapi pas di compile hasilnya ga muncul kenapa ya gan ? ada yang kurang kah ?
<!DOCTYPE html>
<html>
<body>
<h1>Display Radio Buttons</h1>
<form action="/action_page.php">
 <br>
  <label class="radio-inline">
   <input class="r1" type="radio" name="a1" value="10">Option 1
  </label>
  <label class="radio-inline">
   <input class="r1" type="radio" name="a1" value="10">Option 2
  </label>
  <label class="radio-inline">
   <input class="r1" type="radio" name="a1" value="10">Option 3
  </label>
 <br>
 <label class="radio-inline">
   <input class="r1" type="radio" name="a2" value="10">Option 1
  </label>
  <label class="radio-inline">
   <input class="r1" type="radio" name="a2" value="10">Option 2
  </label>
  <label class="radio-inline">
   <input class="r1" type="radio" name="a2" value="10">Option 3
  </label>
 <br>
 <label class="radio-inline">
   <input class="r1" type="radio" name="a3" value="10">Option 1
  </label>
  <label class="radio-inline">
   <input class="r1" type="radio" name="a3" value="10">Option 2
  </label>
  <label class="radio-inline">
   <input class="r1" type="radio" name="a3" value="10">Option 3
  </label>
 <br>
 <button type="button" onclick="displayRadioValue()">
    Submit
  </button>
 <div id="result"></div>
 </form>
</div>
<script>
function displayRadioValue(){
  var score = 0;
 var ele = document.getElementsByName('r1');
 for(i = 0; i < ele.length; i++) {
        if(ele[i].checked)
        document.getElementById("result").innerHTML
            score+=parseInt(ele[i].value)
 }
 }
</script>
</body>
</html>
2 Jawaban:
Jawaban Terpilih
<div>itu copy code darimana, belum pernah lihat buat jquery ready seperti itu.<br>cobalah baca-baca documentasi jquery-nya dahulu.<br>btw, harusnya buat pertanyaan baru. karena ini sudah beda topik/problem.</div><pre>function calcScore(){ var score = 0; var ele = document.getElementsByClassName("r1"); for(i = 0; i < ele.length; i++) { if(ele[i].checked) { score += parseInt(ele[i].value); } } $("input[name=sum]").val(score); } $(function() { $(".r1").change(function(){ calcScore(); }); });</pre><div><br>------<br>hasil dari getElementsByName adalah 0, karena tidak ada element dengan attribut name r1.</div><pre>function displayRadioValue(){ var score = 0; var ele = document.getElementsByClassName("r1"); for(i = 0; i < ele.length; i++) { if(ele[i].checked) { score += parseInt(ele[i].value); } } document.getElementById("result").innerHTML = score; }</pre>
Tanggapan
bisa gan, terimakasih banyak, tapi kan itu harus di submit baru keluar angkanya. saya coba bikin lagi pas di checked radio buttonnya langsung ke kalkukasi hasilnya tanpa disubmit, tapi masih gagal.
search by google gan, oke maaf ya gan. itu hanya tambahan saja, masalah pertama sudah terpecahkan gan. terimakasih sekali
<div>maaf gan mau tanya lagi, saya coba buat yang langsung dikalkulasi tanpa di submit tapi engga keluar hasilnya, ada yang salah kah di kodingan saya ? mohon bantuannya agan agan.<br><br></div><pre><!DOCTYPE html> <html> <body>
<h1>Display Radio Buttons</h1>
<form action="/action_page.php">
<br>
<label class="radio-inline">
<input class="r1" type="radio" name="a1" value="10">Option 1
</label>
<label class="radio-inline">
<input class="r1" type="radio" name="a1" value="4">Option 2
</label>
<label class="radio-inline">
<input class="r1" type="radio" name="a1" value="10">Option 3
</label>
<br>
<label class="radio-inline">
<input class="r1" type="radio" name="a2" value="9">Option 1
</label>
<label class="radio-inline">
<input class="r1" type="radio" name="a2" value="18">Option 2
</label>
<label class="radio-inline">
<input class="r1" type="radio" name="a2" value="10">Option 3
</label>
<br>
<label class="radio-inline">
<input class="r1" type="radio" name="a3" value="10">Option 1
</label>
<label class="radio-inline">
<input class="r1" type="radio" name="a3" value="6">Option 2
</label>
<label class="radio-inline">
<input class="r1" type="radio" name="a3" value="8">Option 3
</label>
<br>
<input type="text" name="sum" />
<!--<button type="button" onclick="displayRadioValue()">
Submit
</button>-->
<div id="result"></div>
</form>
</div>
<script>
function calcscore(){
var score = 0;
var ele = document.getElementsByClassName("r1");
for(i = 0; i < ele.length; i++) {
if(ele[i].checked) {
score += parseInt(ele[i].value);
}
}
$("input[name=sum]").val(score)
}
$().ready(function(){
$("r1").change(function(){
calcscore()
});
});
</script>
</body> </html></pre>
Tanggapan
tanggapannya diatas.