如何以编程方式单击按钮 \- 也许是 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 许可协议

阅读 304
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 许可协议

推荐问题