找到值后如何在下拉列表(select2)中选择值?

时间:2018-07-16 22:42:03

标签: javascript html css angular jquery-select2

我正在做一个小项目,我需要过滤和显示找到的人/客户。

我的模态如下:

enter image description here

我需要在这里实现的是:

1。)输入一个数字代码,例如123,并使用该代码检查客户,然后将其显示在下拉列表中,即select2。

2。)显示此模态且我的代码如下时,我会得到所有人员的列表:

@Component({
  selector: 'screen-person',
  templateUrl: './ screen-person.component.html',
  styleUrls: ['./ screen-person.component.css']
})
export class PersonComponent implements OnInit {
  private id: string;
  private listOfPersons: Array<Person>;

  constructor(private _personsService: PersonsService) {

  }

  ngOnInit() {

  }

  show() {
    $('#' + this.id).modal('show');
    // Here I get all of the persons when modal is shown
    this._personsService.getAll().subscribe(listOfPersons => this.listOfPersons = listOfPersons);
  }
}

当我输入代码并从列表中获取结果时,我想选择相应的行,例如,如果我输入属于Person 1的代码而不是选择Person 1并在所选下拉菜单中显示它。

enter image description here

我正在过滤/搜索这样的人:

searchForPersons(filterBy: string) {
    // We are using array .filter method to create a new array with elements
    this.customers = this.listOfPersons.filter((person: Person) =>
      person.cardNumber.toLocaleLowerCase().indexOf(filterBy) !== -1);
  }

在我的html中:

<div class="form-group">
          <input #code type="text" class="form-control dash-form-control" id="" placeholder="" (keyup.enter)="searchForPersons(code.value)" autofocus>
          <div style="margin-top: 10px;">
            <select id="personSelect" class="form-control dash-form-control select2" style="width: 100%;">
              <option selected disabled>Search...</option>
              <option [value]="person.id" *ngFor="let person of customers ">{{person.title}}</option>
            </select>

          </div>
        </div>

再说一次,我该如何在下拉列表中选择找到的人,所以我不需要打开下拉列表在过滤列表中查找并单击它。

谢谢,伙计们 干杯

0 个答案:

没有答案