Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度2-当默认值为硬编码时,在下拉列表中设置默认值_Javascript_Angular_Typescript_Ngfor_Angular2 Ngmodel - Fatal编程技术网

Javascript 角度2-当默认值为硬编码时,在下拉列表中设置默认值

Javascript 角度2-当默认值为硬编码时,在下拉列表中设置默认值,javascript,angular,typescript,ngfor,angular2-ngmodel,Javascript,Angular,Typescript,Ngfor,Angular2 Ngmodel,我有下面的下拉列表。我想将所有患者设置为默认值 <select [(ngModel)]="searchModel.careprovider"> <option [value]="0">All Pateints</option> <option *ngFor="let user of practiceUsers" [value]="user._id.$oid"> {{user.dn}} &l

我有下面的下拉列表。我想将所有患者设置为默认值

    <select [(ngModel)]="searchModel.careprovider">
      <option [value]="0">All Pateints</option>
      <option *ngFor="let user of practiceUsers" [value]="user._id.$oid">
        {{user.dn}}
      </option>
    </select>
我将practiceUsers设置为:

searchModel: any = { location: null, practice: null, name: '', careProvider: 0 };
  this._practice.getUsers(this.searchModel.practice).subscribe(result => {
    this.practiceUsers = result;
    this.searchModel.careProvider = 0;
  });
无论我如何更改它,我总是得到一个空白选项作为默认值。我尝试在加载后将对象添加到
this.practiceUsers
数组中,然后设置模型值。我试着设置带引号和不带引号的模型值,看看一个数字或字符串是否有区别。我尝试的所有结果都会导致默认为空白选项。


在Angular 1中,我会使用
ng选项
,但Angular 2不再提供该选项,我找到的每个示例都显示使用
ngFor
下拉列表。

对象属性区分大小写,在对象中,属性称为
careProvider
,但在模板中,您正在使用带有小写字母
p
searchModel.careprovider
。我认为您还必须使用
NgValue
指令而不是
value
,因为您使用的是
NgModel
指令。所以,这应该行得通:它不起作用

<select [(ngModel)]="searchModel.careProvider">
  <option [ngValue]="0">All Pateints</option>
  <option *ngFor="let user of practiceUsers" [ngValue]="user._id.$oid">
    {{user.dn}}
  </option>
</select>

所有头饰
{{user.dn}

尝试使用[selected]属性。我这样解决了类似的问题:

<select>
   <option *ngFor="let option of options" value="{{option.id}}" [selected]="option === selectedOption">
      {{option.name}}
   </option>
</select>

{{option.name}
我希望这有点帮助


<select class="form-control" id="policeid_country_id" name="policeid_country_id" formControlName="policeid_country_id">
    <option [ngValue]="null">Select</option>
    <option [ngValue]="country.id" *ngFor="let country of countries">{{country.country}}</option>
</select>
挑选 {{country.country}
情况不总是这样吗?您搜索代码,却发现它是一个简单类型,导致了所有问题。@Jhorra我完全感觉到您了。:-)