代码之家  ›  专栏  ›  技术社区  ›  Hacker

2个文本字段映射到同一窗体控件名称角度2+

  •  0
  • Hacker  · 技术社区  · 6 年前

    我有一个要求,在我有两个搜索字段,一个在顶部,一个在底部。需要保持两个文本字段同步,即用户可以在顶部或底部搜索文本框中键入。如果他在顶框中输入,它应该反映在底框中,反之亦然。我用的是反应角形式

    1 回复  |  直到 6 年前
        1
  •  0
  •   Siva Kumar Reddy Lomada    6 年前

    HTML代码:

    <form [formGroup]="form">
        <div class="form-group">
            <label for="searchBox1">Search Box 1</label>
            <input type="text" class="form-control" id="searchBox1" name="searchBox1" 
                        formControlName="searchBox" placeholder="Search Box 1" (change)="addText($event.target.value)">
          </div>
          <div class="form-group">
            <label for="searchBox2">Search Box 2</label>
            <input type="text" class="form-control" id="searchBox2" name="searchBox2" 
                    formControlName="searchBox" placeholder="Search Box 2" (change)="addText($event.target.value)">
          </div>
    </form>
    

    组件 代码:

    import { Component, OnInit } from '@angular/core';
    import { FormGroup, FormControl, Validators } from '@angular/forms';
    
    @Component({
      selector: 'app-root',
      templateUrl: './app.component.html',
      styleUrls: ['./app.component.css']
    })
    export class AppComponent implements OnInit {
      form: FormGroup;
    
    
      ngOnInit() {
        this.form = new FormGroup({
          'searchBox': new FormControl(null, Validators.required)
        });
      }
    
      addText(value) {
        this.form.setValue({
          'searchBox': value
        });
      }
    }