0

我有不同数量的下拉菜单。计数取决于数据库中保存了多少类别。

这是一个选择部分:

<select style="text-align:center;" class="field" id="dropDown1">
    <option value="0,Pro Person im Einzelzimmer,667" rel="667">Personen</option>
    <option value="1,Pro Person im Einzelzimmer,667" rel="667">1</option>
    <option value="2,Pro Person im Einzelzimmer,667" rel="667">2</option>
    <option value="3,Pro Person im Einzelzimmer,667" rel="667">3</option>
    <option value="4,Pro Person im Einzelzimmer,667" rel="667">4</option>
    <option value="5,Pro Person im Einzelzimmer,667" rel="667">5</option>
    <option value="6,Pro Person im Einzelzimmer,667" rel="667">6</option>
    <option value="7,Pro Person im Einzelzimmer,667" rel="667">7</option>
    <option value="8,Pro Person im Einzelzimmer,667" rel="667">8</option>
    <option value="9,Pro Person im Einzelzimmer,667" rel="667">9</option>
    <option value="10,Pro Person im Einzelzimmer,667" rel="667">10</option>
</select>

上面有一个循环并产生一些这样的选择部分。每个选择都有一个 id="dropDown"+ 一个单独的数字

rel 属性是每个选项的数量。

现在到我的问题:用户应该选择每个选择的数量,然后我需要将数量乘以所选数量。然后是所有的总和。

例子:

我有 3 个下拉菜单。
Dropdown1:金额 260,选项:2
Dropdown2:金额 200,选项:1
Dropdown3:金额 300,选项:0

然后我需要一个总金额的跨度:720

我将如何计算?

这是带有我的下拉菜单的网站:
访问http://fischwenger.derquerdenker.at/safe/book_reise_buchen.php

4

1 回答 1

0

我看到'1'.",".$kat.",".$preis;了你的价值

如果你有 1,something,200, 然后改成 $(this).attr("value")或者parseInt($(this).attr("value"))也许

$(this).attr("value").split(",")[0]

如果您在值中也有价格,则不需要 rel="preis" 如果您在 rel 中有价格,则在值中不需要它。

无论如何,代码将如下所示

$(function() {
  $(".field").on("change", function() {
    var total = 0;
    $("select.field option:selected").each(function() {
      var val = $(this).attr("value").split(",")[0];
      if (val && !isNaN(val)) {
        var price = $(this).attr("rel");
        total += val * price;
      }
    });
    $("#total").text(total.toFixed(2));
  })
  .change(); // trigger onload
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

<select class="field select medium" tabindex="11" name="absender_" class="required"> 
  <option value=""></option> 
  <option value="Frau">Frau</option> 
  <option value="Herr">Herr</option> 
</select><br/>

<select style="text-align:center;" class="field" id="dropDown1">
  <option value="0,Pro Person im Einzelzimmer,667" rel="667">Personen</option>
  <option value="1,Pro Person im Einzelzimmer,667" rel="667">1</option>
  <option value="2,Pro Person im Einzelzimmer,667" rel="667">2</option>
  <option value="3,Pro Person im Einzelzimmer,667" rel="667">3</option>
  <option value="4,Pro Person im Einzelzimmer,667" rel="667">4</option>
  <option value="5,Pro Person im Einzelzimmer,667" rel="667">5</option>
  <option value="6,Pro Person im Einzelzimmer,667" rel="667">6</option>
  <option value="7,Pro Person im Einzelzimmer,667" rel="667">7</option>
  <option value="8,Pro Person im Einzelzimmer,667" rel="667">8</option>
  <option value="9,Pro Person im Einzelzimmer,667" rel="667">9</option>
  <option value="10,Pro Person im Einzelzimmer,667" rel="667">10</option>
</select>
<br/>
<select style="text-align:center;" class="field" id="dropDown2">
  <option value="0,Pro Person im Einzelzimmer,599" rel="599">Personen</option>
  <option value="1,Pro Person im Einzelzimmer,599" rel="599">1</option>
  <option value="2,Pro Person im Einzelzimmer,599" rel="599">2</option>
  <option value="3,Pro Person im Einzelzimmer,599" rel="599">3</option>
  <option value="4,Pro Person im Einzelzimmer,599" rel="599">4</option>
  <option value="5,Pro Person im Einzelzimmer,599" rel="599">5</option>
  <option value="6,Pro Person im Einzelzimmer,599" rel="599">6</option>
  <option value="7,Pro Person im Einzelzimmer,599" rel="599">7</option>
  <option value="8,Pro Person im Einzelzimmer,599" rel="599">8</option>
  <option value="9,Pro Person im Einzelzimmer,599" rel="599">9</option>
  <option value="10,Pro Person im Einzelzimmer,599" rel="599">10</option>
</select>
<br/>Abfahrtsort:
<select class='field' name='abfahrtsort' id='abfahrtsort'>
  <option value='0' rel="0">Bitte wählen Sie Ihren Abfahrtsort</option>
  <option value="0,busbahnhof,0" rel="0">Busbahnhof - 0 €&lt;/option>
  <option value="0,garage_fischwenger_carport,0" rel="0">Garage FISCHWENGER (Carport) - 0 €&lt;/option>
  <option value="0,bh_bei_gh_drei_eichen,0" rel="0">BH bei GH Drei Eichen - 0 €&lt;/option>
  <option value="0,friedburg_baeckerei_heinzl,0" rel="0">Friedburg Bäckerei HEINZL - 0 €&lt;/option>
  <option value="0,munderfing_gemeindeamt,0" rel="0">Munderfing Gemeindeamt - 0 €&lt;/option>
</select>
<br/>zubuchbare Optionen:
<select class='field' name='optionen' id='optionen'>
  <option value='0' rel="0">Optionen</option>
  <option value="1,bahnfahrt_auf_das_jungfernjoch" rel="85">Bahnfahrt auf das Jungfernjoch - 85 €&lt;/option>
</select>
<br/>
<span id="total"></span>

这一切都可以变得更简单,但是我将不得不开始向你收费:)

于 2015-10-08T09:23:18.840 回答