我ui-select2
在我的角度项目中使用。
我的模型下载了一个名为的复杂对象Field
,其中包含多个属性(aField
具有标题\值和其他内容)。
现在具体来说, myField
有两个相关的属性Value
和Options
.
Options
Value
是一个包含和的键值数组对象Text
。它特定于选择框。
该Text
属性是一个字符串值(显示),其中该Value
属性通常是一个数字,但也可以是一个字符串。
底线,我的 select2 模板看起来像这样:
<select ui-select2="select2Options" ng-model="model">
<option ng-repeat="option in options" value="{{option.Value}}">{{option.Text}}</option>
</select>
非常琐碎..
我的问题是 ng-model 将所选选项Value
转换为字符串(例如 2 ->“2”),通过这样做,我在从服务器返回后遇到所选值的问题(因为 2 ! ==“2”)。
我已经深入调试了源代码,但找不到一个好的解决方法。
我尝试使用ng-options
这种方式:
<select ui-select2="select2Options" ng-model="model" ng-options="opt.Text for opt in options">
<option value=""></option>
</select>
但后来我model
得到了 key-value object。现在我可以通过添加一个虚拟的 ng-model 属性并在将分配给“真实”模型的范围上添加一个手表来想到一个丑陋Value
的解决方法 - 但我不想这样做。
有人对我有什么建议吗?