【问题标题】:Default selected value in drop down not working下拉菜单中的默认选择值不起作用
【发布时间】:2018-07-23 21:39:30
【问题描述】:

我有一个下拉菜单,默认情况下在页面加载时会在下拉菜单中选择“PLEASE SELECT USECASE”

但我希望在页面加载时选择“EUC 代理”而不是“请选择使用案例”

HTML 如下所示

<div class="form-group">
                            <label for="bot">Use Case</label>
                            <select id="select" formControlName="useCase" class="form-control" class="form-control" [(ngModel)]="scheduleModel.UsecaseId">
                                <option value="-1" [selected]="isSelected"> Please Select Use Case </option>
                                <option *ngFor="let uc of useCaseList"  [value]="uc.BOTId"> {{uc.BOTName}}
                                </option>
                            </select>
                        </div>
                    </div>

*HTML 我已更改为 *

[已选择]="1"

但这没有任何区别。请参阅下面的更改 HTML

 <div class="form-group">
                                <label for="bot">Use Case</label>
                                <select id="select" formControlName="useCase" class="form-control" class="form-control" [(ngModel)]="scheduleModel.UsecaseId">
                                                                            <option *ngFor="let uc of useCaseList" [selected]="1" [value]="uc.BOTId"> {{uc.BOTName}}
                                    </option>
                                </select>
                            </div>
                        </div>

图片相同

我在下拉列表中选择了“测试机器人”,这是下拉列表中的最后一项,如下所示:

但我期待这个:uc.BOTId =1 是“EUC 代理”而不是“测试机器人”

TS 文件

 ngOnInit() {
  getUsecaseList() {
      this.manageBotService.getAllBots().subscribe(res => this.useCaseList = res);

  }
}

为什么我无法选择页面加载时 uc.BOTId =1 的“EUC 代理”?

【问题讨论】:

标签: html angular typescript html-select


【解决方案1】:

从您的选项中删除 [已选择]。

'select' 中的 [(ngModel)] 部分会将值设置为 selected(取决于 'scheduleModel.UsecaseId' 的值。

【讨论】:

  • 谢谢 this.scheduleModel.UsecaseId = 1;工作,因为你给出了第一个提示,我接受了这个
【解决方案2】:

我没有看到你使用使其默认的指令:

value='default' 

例如:

<select name='test'>
<option value='default' selected='selected'>Please select the value</option>
<option value='value1'>value1</option>
<option value='value2'>value2</option>
</select>

【讨论】:

  • 我这样做了,但没有成功
  • 但正如我所说,我没有在您的 html 上看到 value='default' 语句。 value='default' 必须完全像这样写
  • 试试
【解决方案3】:

在ng-init() 上加载下拉菜单后设置scheduleModel.UsecaseId = 1。

【讨论】:

  • 谢谢它的工作,因为你的答案排在第二位,我接受另一个答案......非常感谢
  • 没有问题 :) 很高兴为您提供帮助 :)
猜你喜欢
  • 2017-11-22
  • 2015-04-10
  • 1970-01-01
  • 2023-01-09
  • 1970-01-01
  • 2015-07-01
  • 2018-10-14
  • 2018-11-25
  • 2022-01-10
相关资源
最近更新 更多