我在HTML5中实现一个JSP页面,该页面应该可以在IE8和IE11中使用。
页面上的我有一个按钮:
<button onclick="moveItemFunc()">MoveItem</button>
此功能适用于2个“SELECT”框,并在按钮上单击将所选项目从一个框移动到另一个框。此功能适用于IE8。
我还定义了一个“onload”事件:
<body onload="loadObjects();">
Onload函数使用原始值填充我的SELECT框。
这是问题所在。加载页面后,我在一个框中看到2个项目,选择其中一个项目并单击“MoveItem”按钮,该按钮调用“moveItemFunc”函数将项目移动到第二个SELECT框。但是之后再次调用onload“loadObjects()”函数,它会恢复SELECT框的内容。
奇怪的是它在IE8中运行得很好(项目从一个盒子移动到另一个盒子,并且按钮点击后不会调用onload函数),但它在IE11中不起作用(调用onload函数)
UPD。我理解为什么“body onload =”loadObjects();“被调用。在我的JS函数中,我正在更新SELECT对象,即更改触发onload调用的DOM。现在的问题是如何绕过调用”onload“如果我对页面上的对象进行了更改。