我如何使用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>
答案 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
。