javascript:firefox在组合框上选择了索引
我的网页上有一个简单的小组合框:javascript:firefox在组合框上选择了索引,javascript,firefox,combobox,Javascript,Firefox,Combobox,我的网页上有一个简单的小组合框: <select id="famNum" onchange="familySize()"> <option value="0">0</option> <option value="1">1</option> <!-- etc --> </select> 它在Safari中运行良好,但在firefox中不起作用。我甚至尝试过使用jQuery: $('#f
<select id="famNum" onchange="familySize()">
<option value="0">0</option>
<option value="1">1</option> <!-- etc -->
</select>
它在Safari中运行良好,但在firefox中不起作用。我甚至尝试过使用jQuery:
$('#famNum').selectedIndex = 0;
但firefox仍然无法做到这一点。如何在firefox中实现这一点?它一直说“famNum未定义”Internet Explorer开始将ID或名称为全局对象的元素公开。Safari似乎采取了这种行为。使用
getElementById()
在每个浏览器上运行它
document.getElementById("famNum").selectedIndex = 0;
只有一些浏览器将所有具有id的元素添加到窗口对象。这是一种非标准行为,例如Firefox就没有这样做。要访问元素,应使用
getElementById
方法:
document.getElementById('famNum').selectedIndex = 0;
如果要使用jQuery,调用不会返回元素,而是返回jQuery对象。您可以使用jQuery方法设置属性:
$('#famNum').attr('selectedIndex', 0);
也可以从jQuery对象中获取元素:
$('#famNum')[0].selectedIndex = 0;
它应该是getElementById而不是getElementById。它不会让我只编辑一封信,所以只要让每个人都知道,以防他们遇到任何问题。
$('#famNum')[0].selectedIndex = 0;