首页 > 解决方案 > Javascript,我无法将焦点设置为 html 表单元素

问题描述

我知道我必须先在 google、youtube 和 stackoverflow 上进行搜索,然后才能在 stackoverflow 上提问。

但我发誓我在 youtube 上看过很多视频,我在 google 和 stackoverflow 上搜索了很多方法!解决我的问题。,

现在我被这个困住了

<input id="input-sign-in-id" class="uqid-id-input touch-feedback textfield-validate theme-textfield hokkai-text-input insert-dir three-point-leader" dir="auto" placeholder="Email Address" maxlength="64" type="email">

我可以通过此代码设置任何值,并且可以正常工作。

var t2 = document.getElementById("input-sign-in-id");
t2.value = "LuxuryUAE2@hotmail.com";

但问题是我无法将焦点设置为输入,我尝试了这段代码,但它不起作用。

var t2 = document.getElementById("input-sign-in-id");
t2.focus();
t2.click();
t2.select();

标签: javascript

解决方案


您的 JavaScript 看起来是正确的。您应该能够使用以下代码专注于输入元素:

document.getElementById("input-sign-in-id").focus()

该输入元素上有很多 CSS 类可能会影响该元素的焦点样式。此外,也可能存在特定于 ID 的 CSS 影响。

尝试删除所有类,看看它是否有效。然后慢慢地一一加回来,直到找到罪魁祸首。


推荐阅读