html输入字段“value id”组合

时间:2013-05-17 11:38:38

标签: javascript html

我想了解究竟是什么组合

... value id= ...

in

<input type="text" name="session_key" value id="session-key-login">

一样。请注意,该值后面紧跟id。

我的问题是,只要在输入字段中发生这种组合(例如在Facebook登录页面“电子邮件或电话”字段(仅限)和LinkedIn登录页面中的任何位置),

 document.getElementById(..).focus()

方法失败。我确信“value id”组合可以做一些非常重要的事情,因为Facebook仅将其用于一个字段,而所有其他字段都没有id之前的空值字段。

提前致谢。

2 个答案:

答案 0 :(得分:4)

它们是两个完全不同的属性。请注意,属性由空格分隔,因此即使之后没有=指定,如在您的示例中,它也是一个独特的属性,而不是与下一个属性结合。

  • value定义输入的值(在呈现页面时预先填充的值)。如果保留为空(如在您的示例中),则不执行任何操作。但是,如果您这样做了,value="hi",则文本框将预先填入“hi”

  • id指定输入的唯一标识名称。它用于访问DOM中的元素,使用JavaScript,例如document.getElementById('session-key-login')

答案 1 :(得分:0)

我想我找到了我的焦点()问题的答案。

我发现的是在页面上,一旦关注所需的元素,就调用focus()。但是,对同一元素的第二次调用失败,除非使页面明确地丢失前一个焦点,例如,通过在同一元素上调用blur()方法。

我可能错了,但我的猜测是Facebook会在加载时隐式/自动关注“电子邮件”字段,因此我的第二个焦点不会做任何事情。虽然它适用于其他领域。

因此,Steven Moseley的解释紧紧抓住:)

谢谢, NIKHIL