在vuejs做多个算术

时间:2018-01-28 12:25:02

标签: javascript vue.js

我正在尝试获取值的百分比,并使用vuejs再次添加它。 这是一个示例: 5/100 * 900 + 900 = 945.00(正常方式)

5/100 * 900 + 900 = 90045(Vuejs方式)

这是我的代码:

<td>
  <input name="amount[]" v-model="row.amount" style="width: 94px;" type="text">
</td>
<td>
  <select name="vat[]" v-model="row.vat" style="width: 94px;" class="form-control">
    <option value="0" selected>0%</option>
    <option value="5">5 %</option>
  </select>

</td>
<td>
  <input type="hidden" :value="row.vat / 100 * row.amount" v-model="gross_am">
  <input value="" name="gross[]" :value="row.amount + gross_am" v-model="row.gross | currencyDisplay" style="width: 94px;"
    type="text">
</td>

关键是我正在尝试获取输入金额的总金额,以获得用户输入金额的总金额,并从下拉列表和算术触发器中选择增值税值。这是值的百分比加上值=总金额 谢谢。 (我仍然是一个vuejs noob)

1 个答案:

答案 0 :(得分:0)

这是因为row.amountgross_am是字符串。 +运算符用于字符串连接和算术运算。如果两个值都是字符串,则将它们连接起来。在你的情况下,字符串&#34; 900&#34;和&#34; 45&#34;连接到&#34; 90045&#34;。要避免这种情况,请手动将值转换为整数。

<input value="" name="gross[]"  :value="parseInt(row.amount) + parseInt(gross_am)" v-model="row.gross | currencyDisplay"  style="width: 94px;"
                                       type="text">