【问题标题】:Select box default selected value not showing in selectbox in angular 2选择框默认选择值未显示在角度 2 的选择框中
【发布时间】:2018-02-13 07:34:09
【问题描述】:

我正在尝试使用为我的编辑页面设置的默认值进行选择操作。但是,它没有显示在选择框中

<select name=moduleId [(ngModel)]="moduleName" >
          <option value="{{model.moduleId}}" selected>{{moduleName}}</option>
          <option *ngFor="let accss of access" value="{{accss.moduleId}}">{{accss.moduleName}}</option>     
</select>

像这个默认值一样显示在选项的正下方。

【问题讨论】:

  • 应该 {{moduleName}} 是 {{model.moduleName}} 吗?你确定 [(ngModel)]="moduleName" 是正确的语法吗?
  • 感谢这些 cmets,我在我的模型类中进行了一些更改,现在它工作正常@Zze,@ Anthony McGrath

标签: html angular typescript angular2-template


【解决方案1】:

将此value="{{model.moduleId}}" 删除为value="{{moduleName}}"

<select name='moduleId' [(ngModel)]="moduleName">
        <option value="{{moduleName}}" selected>{{moduleName}}</option>            
        <option *ngFor="let accss of access" value="{{accss.moduleId}}">{{accss.moduleName}}</option>     
  </select>

并在组件中添加对象为

access = [{
    moduleId: 1,
    moduleName: 'abc'
}, {
    moduleId: 2,
    moduleName: 'def'
}];
moduleName = 'Select'; 

【讨论】:

    【解决方案2】:

    问题可能是value 选项更改为[value] 属性绑定

    <select  name=moduleId [(ngModel)]="moduleName" >
        <option *ngFor="let accss of access" [value]="{{accss.moduleId}}">{{accss.moduleName}}</option>  // change to this   
    </select>
    

    组件

    export class Component {  
        moduleName: any = <yourselecteddefaut>;   
      }
    

    【讨论】:

      猜你喜欢
      • 2019-01-20
      • 2022-11-28
      • 1970-01-01
      • 2020-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-10
      • 1970-01-01
      相关资源
      最近更新 更多