在选择选项中选择默认值

时间:2017-08-02 19:24:45

标签: html angular

在我的Angular计划中,我有一个使用ngFor显示许多员工的选择框,并使用ngValuengModel从列表中获取员工人数并使用它作为访问数组时的索引。我希望在所有被选中的员工之上有一个选项。这是我尝试过的,只要选择了所有员工或其中一名员工,一切都有效,但我希望默认为All Employees选项。我怎么能这样做?

HTML

<select class="form-control" id="empName" [(ngModel)]="selectedEmployee">
    <option selected>All Employees</option>
    <option *ngFor="let emp of empInfo; let i = index" [ngValue]="i">{{emp.EmpID}} - {{emp.FirstName}} {{emp.LastName}}</option>
</select>

这是我的ts中的变量:

selectedEmployee: number;

我尝试过这两种方式:

<option selected>All Employees</option>

<option selected="selected">All Employees</option>

但都不起作用。

3 个答案:

答案 0 :(得分:2)

[(ngModel)]="selectedEmployee"
class MyComponent {
  selectedEmployee:number = 3;    

您可以使用

 (ngModelChange)="updateSelection($event)"
 updateSelection(value) {
   this.model.employeeNo = value;
 }

答案 1 :(得分:0)

您可以删除ngModel,并在更改时获取员工。在此示例中,所有员工始终是选定的选项,您只能在选择更改时检索员工。

<select (change)="updateEmployee($event.target.value)" >
        <option [value]="'All employees'" ></option>
        <template ngFor let-emp [ngForOf]="emplInfo" let-i="index">
          <option [value]="i" >{{emp.empId}}</option>
        </template>
    </select>

答案 2 :(得分:0)

或许这样的事情?

  <label>Employee:</label>
  <select [(ngModel)]="employee.id"
    (ngModelChange)="onSelect($event)">
      <option value="0">--Select--</option>
      <option *ngFor="#employee of employees" 
        value={{employee.id}}>{{employee.name}}</option>

onSelect(value) {
 this.employee.id = value;
}