如何在Angdo Typescript的Kendo下拉列表中触发更改事件?

问题描述

不知道触发dropdownlist的更改事件

我的html:

<div class="row">
    <div class="col-md-6">
        <mat-label id="title-t" class="required"></mat-label>
        <kendo-dropdownlist
            id="tID"
            [data]="dataSourceList"
            [textField]="'name'"
            [valueField]="'code'"
            formControlName="tList"
            (valueChange)="onchangelist($event)">
        </kendo-dropdownlist>
    </div>
</div>

我的ts:

public onchangelist(e){
   var t_code= e.code;
   console.log(t_code);
}

我想在另一个函数中更改呼叫事件,例如:

//tID.kendoDropDownList.change();

OR:

var dropdownlist = $("#id").data("kendoDropDownList");
 
dropdownlist.trigger("change");

解决方法

我假设您要以编程方式更改下拉值。

为此,您只需在下拉列表中添加双向绑定即可。

在您的HTML中:

<div class="col-md-6">
    <mat-label id="title-t" class="required"></mat-label>
    <kendo-dropdownlist
        id="tID"
        [data]="dataSourceList"
        [(ngModel)]="value"
        [textField]="'name'"
        [valueField]="'code'"
        formControlName="tList"
        (valueChange)="onChangeList($event)">
    </kendo-dropdownlist>
</div>
在您的ts文件中,

声明一个名为value的类变量,然后对其进行更改。请注意,绑定的值应该是[数据]列表中的一项。

public value:any;

public change(): void{
  this.value = {code: "ts",value:"tslist"};
}