我有一个特定的 jQuery 片段,在 IE9、Chrome 和 Firefox 等中运行良好,但 IE8 似乎特别不喜欢它:
<script type="text/javascript">
$("#bandwidth").ForceNumericOnly();
$("#bandwidth").on("input", function() {
var total = this.value*0.18;
$('#total').val('£'+ total.toFixed(2));
});
</script>
这会从带宽输入中获取输入,进行相应计算,然后写入总计输入,并以 £ 为前缀。
它似乎没有对总计输入进行计算,这让我很困惑。
最佳答案
您可以使用 keyup 事件,该事件在 IE7+ 中工作正常
$("#bandwidth").on("keyup", function() {
var total = this.value*0.18;
$('#total').val('£'+ total.toFixed(2));
});
编辑:如果您想将输入字段限制为仅数字?然后你可以做这样的事情。
演示:http://jsbin.com/acigaj/5/edit
$("#bandwidth").on("keyup", function() {
this.value = this.value.replace(/[^0-9]/,'');
var total = this.value*0.18;
$('#total').val('£'+ total.toFixed(2));
});
关于javascript - jQuery 在 IE8 中失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17992457/