如何以编程方式单击按钮 \- 也许是 Angular?

新手上路,请多包涵

我正在尝试以编程方式单击 html 按钮。

查看页面源代码 - 我明白了

<div class="submitBtns">
    <button class="btn btn-primary primaryBtn" type="button">Search</button>
</div>

我不认为这是标准的 html - 也许是一个扩展。

我可以访问按钮对象 - 但调用 obj.click() 不起作用。

该文档也有这个标题——也许它会识别文档类型——还有很多以 ng- 前缀开头的类名。

<meta http-equiv="X-UA-Compatible" content="IE=edge">

更多信息…这是第三方网页,我正在向其中注入 javascript。

我在 INPUT 字段中输入了一些内容,然后想模拟按下按钮。

纯javascript。

原文由 dashman 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 303
1 个回答

在 Stackblitz 中创建了一个示例演示以供参考

在 Angular 中,我们可以使用 @ViewChild & ElementRef 访问任何 HTML 元素。我们还必须通过在要以编程方式访问的 HTML 元素中添加前缀 # 来添加唯一标识符。

在 HTML 中:

 <button class="btn btn-primary primaryBtn" #search type="button">Search</button>

在 TS 中:

 import { Component, ViewChild, ElementRef } from '@angular/core';
.
.
export class YourComponent{
.
.
    @ViewChild('search') search: ElementRef;
.
.
.
.   // In your function
    this.subContent.nativeElement.click();
}

原文由 Guhan S 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题