【发布时间】:2013-08-16 09:56:10
【问题描述】:
如果我有以下 HTML
<input type="text" name="Text1" value="MyText" id="Text1"/>
如果我在页面之后运行以下 javascript 代码
var text = document.getElementById("Text1");
text.defaultValue = "i am default value";
设置输入字段的默认值我会根据浏览器得到两种不同的反应。 在 IE9 中,值没有改变,但默认值改变了,这实际上是预期的行为。 在 Chrome(和 Firefox)中, value 和 defaultValue 都被更改了。为什么? 但是,如果我运行这个 JavaScript
var text = document.getElementById("Text1");
text.value = text.value; // No functional change, however triggers something in the DOM
text.defaultValue = "i am default value";
然后它按预期工作,即它只是在 Chrome 中更改的 defaultValue
关于为什么以及如何使 Chrome(和 Firefox)像 IE9 一样运行的任何想法?
【问题讨论】:
-
关于为什么以及如何让 Chrome(和 Firefox)像 IE9 一样运行的任何想法? -- 首先是堆栈溢出?
-
你不是自己回答了吗?遍历所有文本字段并执行 a=a 事情。你说然后它按预期工作。
标签: javascript google-chrome browser internet-explorer-9