Angular JS不区分大小写的绑定?

时间:2016-05-03 20:34:08

标签: javascript angularjs

我有一个选择菜单,按名称显示来自json文件,世界各国的数据。

我旁边有一个文本字段,它绑定到它并显示iso 3166 alpha_2数据(例如瑞士的CH)。

此外,用户可以输入2个字符的代码,并显示菜单中的正确名称。

enter image description here

我的问题是用户需要在大写中键入alpha_2值才能匹配。使用上面的示例,键入“CH”可以正常工作,但“ch”表示菜单中没有匹配项。

有没有办法解决这个问题?

  <td>
     <input type="text" size="4" ng-model="country_import.alpha_2">
  </td>
  <td>
     <select ng-model="country_import" ng-options="s.name for s in iso3166 track by s.alpha_2" class="form-control input-xs country-menu"></select>
  </td>

2 个答案:

答案 0 :(得分:2)

只需在.toUpperCase()变量

上使用track by即可

<select ng-model="country_import" ng-options="s.name for s in iso3166 track by s.alpha_2.toUpperCase()" class="form-control input-xs country-menu"></select>

以下是类似情况的plunker: https://plnkr.co/edit/pESocfNey55uZb85RgDE?p=preview

答案 1 :(得分:1)

我会设置一个手表,并将用户键入的所有内容转换为大写。

{{1}}