2011-06-10 62 views
0

我有一小段代码不能在IE中工作,在FF,Safari,Chrome,Rockmelt和所有工作环境中都经过测试。不能在IE中使用JS更改属性值

JS:

document.forma.score.value = 12; 

HTML:

<input name="score" id="score" type="text"/> 
+0

告诉我们'

'。 – 2011-06-10 15:19:42

+1

名称遍历有太多可能会出错的地方。我们需要查看HTML的其余部分。 – 2011-06-10 16:22:07

回答

1

您可能遇到了众所周知的name/id mixup problem。确保您具有唯一的ID,并且文档中的ID属性值不等于该文档中的名称属性值。

另一方面,我jsfiddled small test。这在IE7-9中有效。如果是IE6:在这个时代应该是一个过时的浏览器。如果是关于另一个IE版本,请在文档中查找名称或ID为“分数”的其他元素。

+0

除OP没有使用'document.getElementById'外。 – 2011-06-10 15:53:09

+0

@Matt:true。我仍然希望将OP指向混音,因为他使用了相同的名称/ ID值。 – KooiInc 2011-06-10 15:56:40

+0

我想我发现了另一个问题,我不能执行JS: – 2011-06-10 16:22:53

3

如何直接获取元素?

document.getElementById('score').value = 12; 

您可能需要考虑使用many available cross-browser JavaScript libraries其除去的厌恶,刺激性,不增加值浏览器之间的差异99.9%中的一个。这真的没关系其中库— Dojo,ExtJS,jQuery,MooTools,原型,RightJS,YUI ...只是选择一个吸引你。这将节省很多的头痛。