我有一个Javascript函数可以计算一个值并将值重新插入<td>
,同时还将值注入隐藏的<input>
。
这是我的功能:
$("input[name^='policies']:checkbox").change(function() {
var el = $(this);
if (el.is(":checked")) {
no_policies++;
}
if (el.is(":not(:checked)")) {
no_policies--;
}
subscription = no_policies*policy_cost;
first_payment = Math.ceil(subscription+no_policies*(policy_cost/days_month)*days_left).toFixed(2);
alert(first_payment);
$("td#first_payment").text("R "+first_payment);
$("input#first_payment_txt").val(first_payment);
$("td#subscription").text("R "+subscription.toFixed(2));
});
在此声明之前,所有内容都适用于IE8:
first_payment = Math.ceil(subscription+no_policies*(policy_cost/days_month)*days_left).toFixed(2);
我怀疑IE8在Math.ceil
遇到问题,这是真的吗?另外,还有其他任何我可以用来绕过这个的功能/方法吗?
提前致谢。
答案 0 :(得分:5)
对你的两个问题的答案都是肯定的:
以下文档支持 模式:Quirks,Internet Explorer 6 标准,Internet Explorer 7 标准,Internet Explorer 8 标准,Internet Explorer 9 标准。
答案 1 :(得分:1)
似乎微软在从ie6(msdn)开始的所有版本上都支持Math.ceil,也许其中一个变量使用未定义或者您偏离0或其中一个变量不是数字,因此结果不能被封闭/舍入。
答案 2 :(得分:0)
IE8实际上有一个相当不错的调试器。我建议按F12打开它,然后转到Script选项卡并选择Start Debugging按钮。这将允许您在脚本中设置断点,让它停止并等待您按照自己的步调分析变量。正如阿德里亚诺在评论中提到的那样,这很可能是你的一个变量的问题。