【问题标题】:jQuery - How to change variable in calculation with if statementjQuery - 如何使用 if 语句更改计算中的变量
【发布时间】:2015-05-13 12:33:15
【问题描述】:

这是我的代码:

function multiply() {
    var area = parseFloat($('#rugarea').val());

    var material = parseFloat($('#material').val())+parseFloat($('#intec').val());

    var clkit = parseFloat($('#clkit').val());

    var width = parseFloat($('#width').val()) || 0;

    var rugmiddle = (area * material);

    var rugsmall = ((area * material)*1.25);

  var rugsub = $('#rugtotal').text('£'+ (rugmiddle+clkit));
}

如果变量width rugsub 中的计算将变量rugmiddle 更改为rugsmall。现在我已经尝试了很多不同的方法来获得我需要的结果,但似乎没有任何效果。

【问题讨论】:

  • var rugsub = $('#rugtotal').text('£'+ (rugmiddle < 2 ? rugsmall: rugmiddle +clkit)); 是吗?

标签: jquery variables if-statement


【解决方案1】:

我需要rugsub 中的计算将变量rugmiddle 更改为 rugsmall 如果变量 width 小于“2”。

如果我理解正确,您希望total 在width < 2 时为rugsmall + clkit,否则为rugmiddle + clkit。

如果是这样,那么这应该可以解决问题:

// inspect width and if less than 2 use rugsmall otherwise use rugmiddle
var rug = width < 2 ? rugsmall : rugmiddle;

// calculate the total with the correct value
var rugTotal = rug + clkit;

// assign the total
var rugsub = $('#rugtotal').text('£' + rugTotal);

完整的代码如下所示:

function multiply() {
    var area = parseFloat($('#rugarea').val());
    var material = parseFloat($('#material').val()) + parseFloat($('#intec').val());
    var clkit = parseFloat($('#clkit').val());
    var width = parseFloat($('#width').val()) || 0;
    var rugmiddle = (area * material);
    var rugsmall = ((area * material) * 1.25);

    var rug = width < 2 ? rugsmall : rugmiddle;
    var rugTotal = rug + clkit;

    var rugsub = $('#rugtotal').text('£' + rugTotal);
}

您可以将其写在一行中,但我将实现细节留给您自己。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-12
    • 1970-01-01
    相关资源
    最近更新 更多