KB-IE Operation Aborted
1 |
1: <html><body>
2: <img src="banner">
3: <table>
4: <tr><td>First Line</td></tr>
5: <tr><td><input type="text" name="txt1">
6: <script type="text/javascript" src="inc.js"></script>
7: <script type="text/javascript">
8: //call some function in inc.js
9: </script>
10: </td></tr>
11: </table></body></html>
我寫了一個類似上面的網頁,Include一個js,然後呼叫js裡的特定函數處理TextBox,看似OK,但以IE開啟時,卻會彈出Operation Aborted的MessageBox。網頁只顯示了上方的Banner Image,感覺上還來不及顯示表格,IE就出問題中止了。
Google了一下,找到這篇說明,狀況跟我十分類似。照著說明,將<script>移到</table>下方,問題迎刃而解。
【教訓】
不要在<td></td>間夾入<script> Block,以免發生不測。不要在<table>....</table>的勢力範圍內夾入<script> Block或其他奇奇怪怪的東西,以免發生不測。(Update @ 2007-06-25,謝謝Steve補充)Updated 2008-01-23 by Jeffrey
正解出現,在<div></div> <table></table>中修改上層元素的innerHTML或appendChild就會出事,請見: http://blog.darkthread.net/blogs/darkthreadtw/archive/2008/01/23/tips-ie-operatino-aborted-again.aspx
Comments
# by steve
我在td外碰過問題 例如<tr><td>之間或者</td></tr>之間 看來總之就是乖乖的照規矩來 table就是table,不要在table中間任何地方放不該放的東西