Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在输入框上模拟单击事件_Javascript - Fatal编程技术网

Javascript 如何在输入框上模拟单击事件

Javascript 如何在输入框上模拟单击事件,javascript,Javascript,我试图模拟点击输入框。手动单击时,会显示一个下拉自动建议框,作为有关过去搜索的建议。然而,当我尝试以编程方式模拟单击时,我得到了一个错误,即“对象不支持单击方法”。还有别的办法吗?我只需要单击事件和下拉的自动建议框。顺便说一句,这是Gmail邮箱上的搜索邮件输入框,我正试图通过网络控制台使用它 我曾尝试通过类名调用click函数,但它给了我一个错误,要么是未定义,要么是对象不支持click。这就是我所说的小部件: <input name="q" class="gb_cf" aria-h

我试图模拟点击输入框。手动单击时,会显示一个下拉自动建议框,作为有关过去搜索的建议。然而,当我尝试以编程方式模拟单击时,我得到了一个错误,即“对象不支持单击方法”。还有别的办法吗?我只需要单击事件和下拉的自动建议框。顺便说一句,这是Gmail邮箱上的搜索邮件输入框,我正试图通过网络控制台使用它

我曾尝试通过类名调用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">
它们都不起作用。有什么想法吗

您需要单击()而不是
。单击()


如果要使用纯/本地javascript,可以使用
input
元素的属性来调用Js函数


函数showButton(){
document.getElementById('mybutt').style.display=“block”;
}
好啊

你能写出用Javascript编写的代码吗?你可能需要focus而不是单击。嗨,Sascha,我试过focus。focus的问题是它没有给我“自动建议”下拉列表,只能单击一下。我无法编辑代码以添加onfocus属性。@user5938020您可以。只需右键单击inspector中的行(您要编辑的行),然后选择edit as HTML。在Brave/Chrome中的外观。有关该问题的更好解释,请参阅。我今天发布了这篇文章,希望得到一些答案。我现在认真地认为浏览器不允许这样的修改生效。您也许可以编辑html以查看结构/样式上的差异,但不允许使用Js。如果是那样的话,你就无法达到你想要达到的目标。我试过这个。它仍然没有模拟单击,因为我没有让“自动建议”下拉列表与“焦点”命令一起显示。
    document.getElementbyClassName("gb_cf")[0].click(); 
    document.getElementbyName("q")[0].click();
    document.getElementbyId("gs_taif50").click();
document.getElementbyClassName("gb_cf")[0].focus(); //or
document.getElementbyId("gs_taif50").focus();