【发布时间】:2020-04-03 12:43:41
【问题描述】:
由于某种原因,我的ng-model 对 AngularJS 编译的选择选项无效。这是常见问题,但我没有找到适用于此处的解决方案。
选择在 ng-repeat 重复的 tr 元素内。
这是我的选择,在大多数情况下 ng-model 等于 1,但选择了一个额外的问号选项:
<select class="form-control ng-pristine ng-valid ng-not-empty ng-touched"
ng-model="item.parent_id" ng-change="validateRow(item)"
ng-options="option as option.name for option in options_parent_names track by option.id">
<option value="?" selected="selected"></option>
<option label="Moja Firma" value="1">Moja Firma</option>
<option label="Dział Finansowy" value="74">Dział Finansowy</option>
<option label="Biuro obsługi klienta" value="76">Biuro obsługi klienta</option>
<option label="Magazyn" value="77">Magazyn</option>
<option label="Dział zamówień" value="78">Dział zamówień</option>
<option label="Dział X" value="80">Dział X</option>
<option label="Inny dział" value="91">Inny dział</option>
<option label="Dział Y" value="92">Dział Y</option>
<option label="Dział Z" value="93">Dział Z</option>
</select>
- 我正在使用
track by,这有助于从选项值属性中删除number:部分 - 尝试了
convert-to-number指令,但这并没有改变任何东西。 - 尝试使用 ng-repeat 而不是 ng-options
- 尝试通过 PHP 生成选项,但这无异于向 HTML 发送垃圾邮件
- 尝试在选项中使用 ng-value
- 用
| number过滤器尝试ng-model - 在进入 ng-model 之前尝试将值转换为数字
【问题讨论】:
标签: javascript angularjs angular-ngmodel ng-options