最近,使用javascript(特定于jQuery)我正在编写一个从隐藏输入字段中检索value属性的脚本。
<input type="hidden" name="amount" id="cost" value="" />
输入的ID为费用。
由于一些奇怪的原因,在 ie7 中,当我输出该值时,它将始终返回 undefined 。
alert($("input#cost").attr("value")); // returns undefined...
经过多次挫折之后,我奇怪地将该输入元素的 id 更改为价格,这似乎解决了这个问题?
此时一切正常,但我想知道是否有人可以解释可能导致此类行为的原因?
答案 0 :(得分:2)
此时一切正常,但我想知道是否有人可以解释可能导致此类行为的原因?
这种错误通常是由多个元素具有相同id
引起的。根据规范,id
属性在页面中必须是唯一的。
如果您需要使用单个标识符标记多个元素,则应使用类。