使用javascript通过选择计算税率

使用javascript通过选择计算税率,javascript,rate,Javascript,Rate,我一直在用它来创建一些非常相似的东西,我唯一想改变的是计算,以得到一个不同的总结果 在该示例中,它们将第一个值乘以另一个值,然后回显结果 取第一个值乘以第二个值效果很好,但当我试图使计算更高级时,一切都失败了 我希望能够使用选定的值建立以下等式: var total = ((firstSelect*secondSelect)-firstSelect*0,68)*300; alert(total); 我还尝试了以下方法,但也失败了: var oppa = firstSelect * rate;

我一直在用它来创建一些非常相似的东西,我唯一想改变的是计算,以得到一个不同的总结果

在该示例中,它们将第一个值乘以另一个值,然后回显结果

取第一个值乘以第二个值效果很好,但当我试图使计算更高级时,一切都失败了

我希望能够使用选定的值建立以下等式:

var total = ((firstSelect*secondSelect)-firstSelect*0,68)*300;
alert(total);
我还尝试了以下方法,但也失败了:

var oppa = firstSelect * rate;
var gagnam = secondSelect * 0.68;
var style = oppa - gagnam;
var total = style * 300;

alert(total);
当前我的HTML如下所示:

<p>Number of sales</p>
 <select name="firstSelect" id="firstSelect" class="DoPricing">
    <option value="15">15</option>
    <option value="20">20</option>
    <option value="25">25</option>
    <option value="30">30</option>
    <option value="35">35</option>
    <option value="40">40</option>
    <option value="45">45</option>
    <option value="50">50</option>
    <option value="55">55</option>
    <option value="100">100</option>
    <option value="150">150</option>
 </select>

 <p>Times rate</p>
 <select name="secondSelect" id="secondSelect" class="DoPricing">
    <option value="0.99">0.99</option>
    <option value="1.15">1.15</option>
    <option value="1.5">1.5</option>
    <option value="2">2</option>
    <option value="2.5">2.5</option>
    <option value="3">3</option>
 </select>
<br>
<br>
<input type="submit" name="submit" value="submit" id="submit">

我该如何实现这一点呢?

如果在
calc()
函数中有onclick处理程序,那么它应该在函数外部,以便在
windows.onload上添加事件侦听器

function calc() {
    var total,
    nSales,
    rate;
    var nSales = document.getElementsByName("firstSelect")[0].value;
    var rate = document.getElementsByName("secondSelect")[0].value;
    var oppa = nSales * rate;
    var gagnam = nSales* 0.68;  //changed to nSales
    var style = oppa - gagnam;
    var total = style * 300;
    alert(total);
};
window.onload = function () {
    document.getElementById("submit").onclick = calc;
}

演示
((firstSelect*secondSelect)-firstSelect*0,68)*300将始终输出20400,因为使用逗号意味着最外层括号中的值始终为68。(这个
应该是
)啊,当然。然而,结果仍然是错的,所以我的方程式一定是错的。如果我在第一次选择中取15,在第二次选择中取0.99,我得到4253.04,答案应该是1395。有没有更好的方法让我把方程组合起来?@talven,检查我的更新答案你缺少一个
nSales
@talven,检查我的更新答案,
gagnam
值计算错误,应该是
nSales
在你纠正之后,我跳过了所有变量,只是做了var total=((nSales*rate)-nSales*0.68)*300; 少就是多。谢谢你的帮助!
function calc() {
    var total,
    nSales,
    rate;
    var nSales = document.getElementsByName("firstSelect")[0].value;
    var rate = document.getElementsByName("secondSelect")[0].value;
    var oppa = nSales * rate;
    var gagnam = nSales* 0.68;  //changed to nSales
    var style = oppa - gagnam;
    var total = style * 300;
    alert(total);
};
window.onload = function () {
    document.getElementById("submit").onclick = calc;
}