Angular 如何使用typescript获取div中文本框的值?
我的html是这样的Angular 如何使用typescript获取div中文本框的值?,angular,typescript,Angular,Typescript,我的html是这样的 <div id="series1"> <div class="col-md-6"> <label for="Mark">Mark</label> <input type="text" id="mark" class="shortTextbox" (blur)="signalSelected('mark')" /> </div> </div>
<div id="series1">
<div class="col-md-6">
<label for="Mark">Mark</label>
<input type="text" id="mark" class="shortTextbox" (blur)="signalSelected('mark')" />
</div>
</div>
做记号
我想获取在文本框中输入的标记值的值。这个html代码在我点击按钮时重复。每次单击按钮时,id都会更改为series2和series3,依此类推
目前在typescript文件中,我取的值如下
var val = (<HTMLInputElement>document.getElementById(selection)).value
var val=(document.getElementById(selection)).value
但这不会给我为各个系列id选择的值。请提供如何根据id(系列1、系列2)获取标记值。您可以使用
ngModel
<input type="text" [(ngModel)]="myFieldInComponentClass"
只要输入中的值发生变化(反之亦然),该字段就会被指定值
您可以让它成为一个getter/setter,在更改时执行代码
private _myFieldInComponentClass:String;
set myFieldInComponentClass(value :String) {
this._myFieldInComponentClass = value;
// other code
}
get myFieldInComponentClass() {
return this._myFieldInComponentClass;
}
只需在您的输入字段中添加[(ngModel)]=“mark”
,并添加一个名称,
您的html组件可能如下所示:
<div id="series1">
<div class="col-md-6">
<label for="Mark">Mark</label>
<input type="text" id="mark" class="shortTextbox" [(ngModel)]="mark" (blur)="signalSelected('Mark')" name="mark" />
</div>
</div>
...
mark: string;
signalSelected (markVal: string){
markVal = this.mark
console.log(markVal); // it is the value
}
您使用的是Angular2,为什么不使用绑定呢?如果我传递signalSelected('Mark'),Mark就是一个字符串值,您在methodsignalSelected(markVal:string){markVal=this.markI尝试了(blur)=“signalSelected(event)”,在方法中我得到的值是event.currentTarget.value。这很有效。
...
mark: string;
signalSelected (markVal: string){
markVal = this.mark
console.log(markVal); // it is the value
}