13

给定一个加载了产品选项的选择列表,我希望标签的格式为选项名称,然后是括号中的价格。例如:“产品选项 B ($1,432.12)”。我的选项对象具有属性“名称”和“价格”。价格是数字,我希望它使用货币过滤器格式化。我该怎么做?我在想也许是一个接受字符串和数值的自定义过滤器。只是不确定如何在 ng-options 中应用过滤器。

以下代码仅显示名称(而非价格):

<select class="form-control"
        ng-model="selectedOption"
        ng-options="option.name for option in category.options"></select> 
4

1 回答 1

30

这应该适合你:

<select class="form-control"
    ng-model="selectedOption"
    ng-options="option.name + ' (' + (option.price | currency:'USD$') + ')' for option in options">
</select>

这将呈现一个下拉列表,其中包含以下形式的项目:Item A (USD$14.00)

http://jsfiddle.net/6MYc3/

于 2014-05-02T21:41:37.427 回答