带小数占位符的HTML输入0.00

时间:2014-03-04 00:39:04

标签: javascript jquery html

我如何使用javascript创建输入字段,每次用户点击下图中的按钮时,该值都会替换最后一个零。

屏幕截图 - http://i.stack.imgur.com/rikcT.png

示例:

用户点击1 - 文本框的值:0.01

用户然后点击5 - 文本框的值:0.15

用户然后Cliks 7 - 文本框的值:1.57

目前,如果文本框为0.00且用户单击1,则新输入为0.001。

我不确定这是为了研究一种可靠的方法来实现它。

编辑:当前代码如下:

<form name="Tender"
  <input name="Amount" type="text"/>
</form>

<a href="#" OnClick="Tender.Amount.value += '1'" class="btn btn-primary btn-large">1</a>
<a href="#" OnClick="Tender.Amount.value += '2'" class="btn btn-primary btn-large">2</a>
<a href="#" OnClick="Tender.Amount.value += '3'" class="btn btn-primary btn-large">3</a>

1 个答案:

答案 0 :(得分:1)

这似乎有效:

var num = 0.01
var add = (num.toFixed(2) + 5) * 10

基本的想法是它取数字,告诉它被添加到1000ths位置(所以在这种情况下,在1之后),在1000ths地方添加新数字,然后乘以10来考虑十进制移位。

然后你可以创建一个函数:

function add(base, add){
    return (base.toFixed(2) + add) * 10
}

哪个不是很漂亮,但是:

add(add(0.01, 5), 7);

或者:

var base = 0.01,
    numbers = [5, 7];
for (var i = 0; i < numbers.length; i++){
    base = add(base, numbers[i]);
}
alert(base);

输出1.57

Here's an example.