• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Frage Preis Berechnen anhand Select & Radio

Frak22

Neues Mitglied
Guten Tag, und ein Schönen Sonntag.
Ich habe folgendes Problem, ich habe einige Variationen zu bestimmten Artikeln.
Aktuell funktioniert dies auch, das er mir den Preis je nach Auswahl rechnet. Allerdings nur über "Selectboxen" bzw. Optionen

Mein Code:
Javascript:
<script>
    $("select, input, textarea, radio").change(function()
    {
        update();
    }).trigger("change");

    function update()
    {
        sum = parseFloat($("#r").find("option:selected").data("price"))
        <?php
            $product_q = $db->query("SELECT * FROM variationen_cat WHERE cat_id = '".$db->chars($article_r['id'])."'");
        while($product_r = $db->fetch_array($product_q))
        {
            echo '+parseFloat($("#'.$product_r['jquery'].'").find("option:selected").data("price"))';

        }
            ?>
        ;
<!-- Hier möchte ich den Faktor also die Laufzeit hinzufügen über einen Radio Input -->
        var price = Number(sum * $("#interval").find("option:selected").data("factor")).toFixed(2);
        $("*[data-amount]").html(price + " €");
        $("#price").val(price);
    }
</script>

Das ganze Funktioniert eigentlich recht gut. Aber wie gesagt nur mit Option:selected

aber anstatt das möchte ich die Radio box auslesen

nämlich diese:
HTML:
 <div class="radio-box">
<input type="radio" id="interval" name="interval" value="90" data-factor="3">
<div class="radio-box-inner">

Liebe Grüße
 
Werbung:
Wäre sinnvoll wenn man den ganzen HTML Code dazu hätte.
Erstens hast du hier
Code:
  $("select, input, textarea, radio").change(function()
Ein Element Radio eingegeben , was es nicht gibt.
Dann sehe ich auch nicht dass du das Radio Button richtig abfragst.

Was fragst du den hier ab? Option oder Radio , weil das Radio hat ja die ID.
Code:
 $("#interval").find("option:selected").data("factor")).toFixed(2);


Ohne jQuery und bei deinem Weg zu bleiben kommst du so an den Radioinhalt dran
Javascript:
var ele=document.querySelectorAll("select, input, textarea");
ele.forEach(function(s){
  s.addEventListener('change',function(s){
        update(this);
   })
});

function update(a){
      alert(a.value+''+a.dataset.factor)
}
Hoffe ich habe dich richtig verstanden
 
Zurück
Oben