javascript - 多重选择菜单值并用值更新表

标签 javascript drop-down-menu html-table

我有一个包含各种选项值的选择菜单。如果所选值小于 25,我需要将所选值乘以“10”,如果所选值是 25 或更大,我需要将其乘以“12”。

我是 JS 新手。我可以使用下面的代码乘以 10 来使其工作,但我不知道如何编写 if/else 语句来检查选择是否小于 25 并乘以 10 或 25 或更大并乘以到 12 点。

HTML:

<table width="100%" border="0">
  <tr>
    <td>
      <select id="licenseRegs">
        <option value="5">5</option>
        <option value="10">10</option>
        <option value="15">15</option>
        <option value="20">20</option>
        <option value="25">25</option>
        <option value="50">50</option>
        <option value="75">75</option>
        <option value="100">100</option>
        <option value="125">125</option>
      </select>
      </td>

      <td id="total-price">Price show here</td>
    </tr>
  </table>

Javascript:这会将所有选择值乘以 10。如果小于 25,我需要它乘以 10,但如果等于或大于 25,则乘以 12。

// calculate price of # of computer selection
$(document).ready(function() {
  var pricePerReg = 10;
  var licenseRegsSelect = $('#licenseRegs');

  function updateTotalPrice() {
    licenseRegs = licenseRegsSelect.val();
    $('#price').html(pricePerReg * licenseRegs);
  }

  licenseRegsSelect.change(function() {
    updateTotalPrice();
  });

  updateTotalPrice();
});

最佳答案

使用您的代码, 我添加了一个 if/else 语句(希望根据您对问题的描述,它是不言自明的。它就是这样做的 - 检查 licenseRegs 是否小于或大于或等于 25。 )。

我还使用内置的 parseInt() 来获取整数形式的数字;它存储为字符串。 (这是“25”(字符串)和 25(整数)之间的区别。 这可能不是必要的,但这是一个很好的做法。请参阅此问题以获取更多信息:How do I convert a string into an integer in JavaScript?

// calculate price of # of computer selection
$(document).ready(function() {
  var pricePerRegUnder = 10;
  var pricePerRegAbove = 12;
  var licenseRegsSelect = $('#licenseRegs');

  function updateTotalPrice() {

    licenseRegs = parseInt(licenseRegsSelect.val(), 10);

    ///////////// New code here ////////////
    var total;
    if (licenseRegs < 25) {
      total = licenseRegs * pricePerRegUnder;
    } else {
      total = licenseRegs * pricePerRegAbove;
    }
    //////////// Ends here /////////////////

    $('#price').html(total);
  }

  licenseRegsSelect.change(function() {
    updateTotalPrice();
  });

  updateTotalPrice();
});

关于javascript - 多重选择菜单值并用值更新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40025633/

相关文章:

javascript - 输入设备的 HTML5 视频焦点

php - 国家/地区的动态 PHP 下拉菜单

html - 从不显示到显示 block 的 CSS 转换,反之亦然

jquery - 使用 jQuery 对 HTML 表格行进行自定义排序

javascript - Electron:使用 `executeJavaScript` 加载文件

javascript - 使用 leaflet-pip 绘制多边形中的点

javascript - 无法在 Firefox 中调用 Form 元素

javascript - 显示或读取 colspan 值

javascript - 为什么jQuery刷新数据div时div下的span标签消失了

php - yii2 下拉列表 onchange