1

我有一个下拉列表,其中包含以下内容:

<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 中不行。

4

1 回答 1

2

一些可能的问题——你确定<select>idshipping已经加载并且没有从 DOM 中删除吗?是否有另一个带有 id 的元素shipping?值真的是一个数字吗?另外,total变量,您确定它已被初始化var以使其在您使用它的地方可以访问吗?

parseInt()请注意,与第二个参数一起使用是个好主意,因此parseInt(foo, 10);要确保将其解析为十进制数。

尝试在jslint中检查您的代码,以查看可能导致问题的其他错误。

于 2009-11-11T17:21:25.047 回答