【问题标题】:Activating a trigger on selector when clicking instead of on change单击而不是更改时激活选择器上的触发器
【发布时间】:2019-05-22 10:34:19
【问题描述】:

目前我正在做一个 Angular 项目。

我想创建一个选择按钮,当我单击其中一个选项时,它会在我的 .ts 文件中调用一个函数。它必须与它一起发送选择的选项。

现在我正在使用以下代码:

在我的 HTML 中

<select class="btn add" (change)="onChange($event.target.value)">
    <option value="" disabled selected>Choose...</option>
    <option *ngFor="let option of listOfOptions >{{option}}</option>
</select>

在我的 .TS 中

private listOfOptions = ['delete'];

以及必须触发的功能。

onChange(option) {
    if(option = 'delete') {
      console.log('Triggered delete!');
  }
}

如您所见,目前我正在使用 (change) 事件。但是,当它处于“删除”状态时,您将再次单击“删除”,那是行不通的。因此,我想将其更改为(单击)。但是当我这样做时,它会在打开选择器时触发,而不是在选择选项时触发。

如何让它在我选择选择器内的选项时触发,而不是选择器本身?

【问题讨论】:

标签: angular


【解决方案1】:

change 监听器放在select 标记上。

<select (change)="onChange(...)">

【讨论】:

  • 这就是我已经拥有的,但它并没有按照我想要的方式工作。
  • 我的回答实际上与您问题的初始版本有关。你已经更新了它,所以我可以看到我的答案不会解决你的问题。 :)
【解决方案2】:

你可以这样做:

<option (click)="yourFunction()">

你可以输入一个参数,这样你就可以看到被点击的选项。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-04
    • 1970-01-01
    • 1970-01-01
    • 2020-12-31
    • 1970-01-01
    • 1970-01-01
    • 2016-06-25
    • 2011-01-23
    相关资源
    最近更新 更多