当我们更改下拉选项时,下拉选择会挂起

时间:2016-02-14 16:55:15

标签: javascript jquery html performance javascript-events

当我们在IE11浏览器中更改下拉选项时,下拉选择会挂起。

然而,这适用于其他浏览器。如何解决这个问题,为什么在IE11中出现这个问题?

请点击下面的按钮查看此问题!!

<!DOCTYPE html>
<html>
<body>

<form>
  <select id="mySelect" size="8">
            <option>Orange</option>
  </select>
</form>
<br>

<button type="button" onclick="myFunction()">Click</button>

<script>
function myFunction() {
    var x = document.getElementById("mySelect").options;
    x[1]=new Option;
    x[1].text=x[0].text;
    x[1].value=x[0].value;
    x[0].text='sdf';
    x[0].value='sdf';
       }
</script>

</body>
</html>

enter image description here

1 个答案:

答案 0 :(得分:0)

在您的脚本代码中,您正在更改已传递数组值的列表的值和文本,如下所示。

x[3].text=x[2].text
x[3].value=x[2].value

这里你正在使用文本x [3]数组并在x [2]中设置它,同样你正在取x [3]的值并分配给x [2]值。根据IE11,它正在改变值和文本,但在其他浏览器中它只改变值而不是文本。它应该像下面的代码来设置值。

x[3].text=x[3].text
x[3].value=x[3].value