我的下拉列表中包含以下内容:
<select id="shipping" name="shipping_option">
<option SELECTED value="60">R60</option>
<option value="90">R90</option>
<option value="100">R100</option>
</select>
然后,当下拉列表的内容发生变化时,javascript会运行updateTotal(),具体如下:
function updateTotal() {
total = parseInt($("#shipping").val());
}
现在在Firefox和Safari中运行良好,但在IE中则不行。它只是不起作用。它说对象不支持功能。
这是IE中的错误,还是与IE相关的jQuery中的错误?正如我所说的,这种方法非常有效,而不是在IE中。
答案 0 :(得分:2)
一些可能的问题 - 您确定已加载<select>
且标识为shipping
且尚未从DOM中删除的问题吗?是否有另一个ID为shipping
的元素?价值真的是一个数字吗?此外,total
变量,您确定它已使用var
初始化,以便在您使用它时可以访问它吗?
请注意,将parseInt()
与第二个参数一起使用是个好主意,所以parseInt(foo, 10);
确保将其解析为十进制数。
尝试检查jslint中的代码,看看可能导致问题的其他错误。