隐藏IE中的选择框?

时间:2012-11-13 20:56:01

标签: javascript internet-explorer

我正在尝试使用JavaScript隐藏下拉列表。以下代码我已经在Firefox和Chrome中工作,但在IE 8中测试它不起作用。

<select name="month" id="month" onchange="monthselector_changed(this)">
  <option  value="1">
        Jan</option>
  <option  value="2">
        Feb</option>
  <option  value="3">
        Mar</option>
  <option  value="4">
        Apr</option>
  <option  value="5">
        May</option>
  <option  value="6">
        Jun</option>
  <option  value="7">
        Jul</option>
  <option  value="8">
        Aug</option>
  <option  value="9">
        Sep</option>
  <option  value="10">
        Oct</option>
  <option selected value="11">
        Nov</option>
  <option  value="12">
        Dec</option>
  </select>

然后我使用以下代码隐藏它

document.getElementById("month").style.display = 'none';

只是为了澄清我试图隐藏然后整个选择框不是一个选项。

1 个答案:

答案 0 :(得分:1)

$在ID字段中无效,因此可能会搞乱IE,而其他浏览器对规则更“放松”。

有关详细信息,请参阅此主题: What characters are allowed in DOM IDs?

编辑:我看到你正在将this传递给函数调用。您可以使用this在没有ID的情况下进行切换。例如:

http://jsbin.com/acisof/1/edit

function monthselector_changed(elem)
{
    elem.style.display = 'none';
}