我正在尝试模拟输入框中的点击。手动单击时,将出现一个下拉自动建议框,作为有关过去搜索的建议。但是,当我尝试以编程方式模拟点击时,出现了“对象不支持点击方法”的错误。还有其他方法吗?我只需要单击事件和下拉的自动建议框。顺便说一句,这是我尝试通过Web控制台使用的Gmail邮箱中的Search Mail输入框。
我试图通过className调用click函数,但是它给我的错误是未定义或对象不支持click。这是我正在谈论的小部件:
<input name="q" class="gb_cf" aria-haspopup="true" aria-owns="gs_sbt50" aria-live="off" dir="ltr" spellcheck="false" aria-label="Search mail" type="text" placeholder="Search mail" value="" autocomplete="off">
<input disabled="" class="gb_cf" id="gs_taif50" dir="ltr" autocomplete="off">
我尝试过的几件事:
document.getElementbyClassName("gb_cf")[0].click();
document.getElementbyName("q")[0].click();
document.getElementbyId("gs_taif50").click();
它们都不起作用。有任何想法吗?
答案 0 :(得分:1)
您需要使用.focus()
而不是.click()
document.getElementbyClassName("gb_cf")[0].focus(); //or
document.getElementbyId("gs_taif50").focus();
答案 1 :(得分:0)
如果您要使用纯/本地javascript ,则可以使用input
元素的onfocus
属性来调用Js函数。
<script>
function showButton(){
document.getElementById('mybutt').style.display = "block";
}
</script>
<body>
<input id="myinp" type="text" placeholder="place" onfocus="javascript:showButton()"/>
<button id="mybutt" style="display:none;">OK</button>
</body>
在上面的文件中,当您单击输入字段时,应该看到“确定”按钮出现。