当前位置: 首页 > 知识库问答 >
问题:

在角2中的更改事件上传递参数

施华奥
2023-03-14

每当选择项目时,我都必须传递选项的值。但在我的事件发生后,传递的值总是未定义的。我的代码如下:

<select (change)="handle(this.value);">
<option value="0">Addition</option>
<option value="1">Subtraction</option>
<option value="2">Multiplication</option>
<option value="3">Division</option>
</select>

我的angular2代码如下:

import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'app-home',
  templateUrl: './home.component.html',
  styleUrls: ['./home.component.css']
})
export class HomeComponent implements OnInit {
  n1 = 0;
 n2 = 0;
 result = 0;

handle(value){
  alert("selected option's value is "+value);
}

constructor() { }
  ngOnInit() {

 }

} 

问题是,每当选项发生任何更改时,传递给handle函数的参数(值)总是“未定义”。

alert("selected option's value is "+value);

在这一行中,参数“value”的值始终未定义。

请帮帮忙!

提前感谢!

共有3个答案

邢雨华
2023-03-14

同时考虑

<select (change)="handle($event.target.value);">
年业
2023-03-14

尝试使用此方法:

<select [(ngModel)]="selectedValue" (change)="handle();">
 <option [ngValue]="0">Addition</option>
 <option [ngValue]="1">Subtraction</option>
 <option [ngValue]="2">Multiplication</option>
 <option [ngValue]="3">Division</option>
</select>
import {Component,OnInit} from '@angular/core';

@Component({
    selector: 'app-home',
    templateUrl: './home.component.html',
    styleUrls: ['./home.component.css']
})
export class HomeComponent implements OnInit {
    selectedValue: number;
    n1 = 0;
    n2 = 0;
    result = 0;

    handle() {
        alert("selected option's value is " + this.selectedValue);
    }

    constructor() {}
    ngOnInit() {

    }
}
杜轩昂
2023-03-14

尝试使用模板引用变量

<select (change)="handle(selectField.value);" #selectField>
 类似资料:
  • 更改事件仅在输入的焦点更改后调用。如何使事件在每次按键时触发? 第二个绑定在每个按键上改变btw。

  • 我的组件具有以下功能: 我可以在我的html页面中插入选择菜单,但更改事件不会在我选择项目时触发。有人能让我知道为什么会发生这种情况吗? 谢谢

  • 问题内容: 我已经在Angular 2中创建了一个单页抵押计算器应用程序,它对我来说就像一个学习游乐场(试图让更多的人习惯于当前在工作中使用的技术堆栈)…它运行在http://www.mortgagecalculator123.com如果你想看看。如果您想查看它,可以在页面上通过Fork Me链接将其开源。 无论如何,我想做的就是能够直接从URL将变量传递到我的应用程序,以便我的Angular 2

  • 问题内容: 我需要将一些参数(在我的示例中为id)传递给f:ajax侦听器方法,但我不知道如何。有人帮忙吗? 豆: 问题答案: 将参数传递给f:ajax的方法是:

  • 本文向大家介绍在React中怎么将参数传递给事件?相关面试题,主要包含被问及在React中怎么将参数传递给事件?时的应答技巧和注意事项,需要的朋友参考一下 如果使用箭头函数声明函数,调用方式: 不传参:this.func1,如果不传参,事件参数默认会自己添加上 传参: (e) => {this.func1(e,'param1', 'param2')},如果传参,事件参数需要手动传递过来 如果不用箭

  • 我在ListItem中设置了一个事件。然后在调用的方法上调用来传递单击的列表项的id和name值。 下面的问题建议使用bind,但似乎将onCLick事件添加到ListItem会破坏列表绑定。 在添加单击事件之前,与的列表范围绑定按预期工作,并填充列表。 此外,如果我尝试没有参数,则单击事件不起作用。 问题: 如何在JSX中的onClick事件绑定中传递参数? 列表定义: 从单击事件调用的方法: