在IE中根本没有调用JS onclick()

时间:2017-06-08 11:19:24

标签: javascript internet-explorer onclick

我已经创建了一个包含HTML和JS的下拉菜单。当我在Chrome中运行它时效果很好,但它在IE中不起作用。 onclick()函数似乎根本没有被调用。

select标签中的选项标签如下所示:

<option value="?id=3" onclick="hideDropDown();return false;">Option 3</option>

hideDropDown()永远不会在IE中运行(我已使用函数中的alert()检查过。)

同样的:

<option value="?id=2" onclick="alert('hi'); return false;">Option 2</option>

点击&#39;选项2&#39;在这种情况下,不会发出警报。

我已经在线阅读了很多关于onclick()没有在IE工作的人,但我见过的答案都没有对我有用。有人有什么建议吗?

2 个答案:

答案 0 :(得分:0)

我无法理解你为什么要在函数调用后返回false。 也许你可以从函数中返回false。

所以代码将是:

function hideDropDown() {
  //enter code here
return false;
}

答案 1 :(得分:0)

onclick标记中的<option>个事件似乎存在问题。其中一种方法是将onchange事件放入父<select>标记中:

<select onchange="check(this.value)">
  <option value="1">one</option>
  <option value="2">two</option>
  <option value="3">three</option>
</select>

每次选择(单击)选项时,都会执行check()函数:

function check(value) {
  alert(value);
}

此外,您可以查看选项的值,仅为其运行某些代码:

function check(value) {
  if (value === 2) {
    alert("You clicked two!");
  }
}

工作示例

Ref from