当有人点击我的价格上涨按钮时,我希望价格在#priceInput框中增加.1。这只是不工作,虽然..我做错了什么?点击javascript添加?
$("#priceUp").click(function(){
var xyz = parseInt($("#priceInput").val());
xyz=(xyz+.1);
$("#priceInput").val(xyz);
});
当有人点击我的价格上涨按钮时,我希望价格在#priceInput框中增加.1。这只是不工作,虽然..我做错了什么?点击javascript添加?
$("#priceUp").click(function(){
var xyz = parseInt($("#priceInput").val());
xyz=(xyz+.1);
$("#priceInput").val(xyz);
});
您可能想要使用parseFloat
而不是parseInt
,因为您将价格提高0.1
。另外,你需要确保的#priceInput
的值是一个数字:
$("#priceUp").click(function() {
var xyz = parseFloat($("#priceInput").val() || 0);
xyz = (xyz + .1);
$("#priceInput").val(xyz);
});
这里有一个working example。
您试图解析十进制数为整数,所以您的解决方案不能因为数学评估圆你的电话号码工作。
如果运行parseInt函数(0.1),结果为0。
因此,使用parseFloat
代替parseInt
。
您还需要一个小技巧来避免'0.30000000000000004'“bug”(这不是一个真正的bug)。
这里的解决方案:http://jsfiddle.net/erLqa/
详细说明“只是不工作” – 2012-01-07 17:49:49
结果如何?价值在变化吗?什么都没发生?你确定事件发生了吗? – Yaniro 2012-01-07 17:50:30