0

请看这个 HTML:

<script>
function insert() { 
   document.getElementById("add").innerHTML="<input name=a>";
}
</script>
<button onclick="insert()">Insert new textbox</button>
<form>
  <div id="add"></div>
  <textarea name=b>a</textarea>
  <a href="other.html">Go</a>
  <!-- The content of other.html does not matter -->
</form>

并在Chrome中打开此页面(Win7 64bit, 24.0.1312.52 m)

  • 在 textarea 中添加一些文本,例如“b”(textarea 的值将是“ab”)
  • 选择“Go”链接,显示 other.html
  • “返回”到这个页面,那么textarea的值依然是“ab”
  • 按“插入新文本框”
  • 选择“前往”链接
  • 再次“返回”,然后 textarea 的值回到“a”!

不仅是这个过程,一旦按下“插入新文本框”,当我“返回”到这个页面时,Chrome 就不再记得表单的变化了。

这在其他浏览器中不会发生(它们可以将值“ab”保留到最后):

  • 歌剧 11.11
  • 火狐12.0
  • IE 9.0.12

这是Chrome的错误吗?或者我有什么可以避免的?

演示:http: //jsfiddle.net/DerekL/Lsnvp/

4

0 回答 0