Angularjs 如何在ng选项中创建不同的查看值并选择';s结果
我有一个angularjs的选择(带有Angularjs 如何在ng选项中创建不同的查看值并选择';s结果,angularjs,ng-options,angularjs-ng-options,Angularjs,Ng Options,Angularjs Ng Options,我有一个angularjs的选择(带有name和code的国家列表) 我想在select的下拉列表(当您单击以选择某些内容时)和select框(select的结果)中获得不同的值 我想让select的下拉列表充满字符串,如“英国(+44)”、“俄罗斯(+7)” 当用户选择其中一个选项时,我想让选择框只填充数字(+44或+7) 可能吗 UPD1:再次: 您可以在select的下拉列表中选择美国(+1)(上一张图片的左侧部分),选择后,您可以在select字段(图片的右侧部分)中看到1。这
name
和code
的国家列表)
我想在select的下拉列表(当您单击以选择某些内容时)和select框(select的结果)中获得不同的值
我想让select的下拉列表充满字符串,如“英国(+44)
”、“俄罗斯(+7)
”
当用户选择其中一个选项时,我想让选择框只填充数字(+44
或+7
)
可能吗
UPD1:再次:
您可以在select的下拉列表中选择美国(+1)(上一张图片的左侧部分),选择后,您可以在select字段(图片的右侧部分)中看到
1
。这是可能的,但如果您想要更大的灵活性,我建议您使用ng repeat
而不是ng options
(不确定这是最有效的方法,但可能是最容易理解/维护的方法)
这里有一个例子
<select ng-model="entity.country_code">
<option ng-repeat="country in countries" value="{{ country.code }}">
{{ country.name }} (+{{ country.code }})
</option>
</select>
{{country.name}}(+{{country.code}})
您可以有如下内容
<select ng-model="entity.country_code"
ng-options="c.code as (c.name + ' ('+ c.code + ')') for c in countries">
</select>
不确定它是否有效。至少在chrome
+mac os
上。仍然{country.name}(++{country.code}})
在结果选择字段中(但实体。country\u code
包含country.code
,按计划)您的意思是{country.name}
不是由angular解析的,您在代码中看到了吗?不,不,这不是关于如何在下拉列表中设置值的格式,而是关于如何使下拉列表中的值看起来像c.code as(c.name+“(“+c.code+”)
但当您选择其中一个值时,下拉列表将消失,如何使所选值看起来像选择中的c.code
box@SergeyPanfilov我对你上面所问的问题感到困惑?我不认为使用普通程序是可能的。你应该尝试一下这个库:是的,也许你是对的,我不确定浏览器的可比性即使可能,该库经过跨浏览器测试,我们也会在我们的实时项目中使用它。您可以开始使用它,如果该库中有任何疑问,我将提供帮助:)
<select ng-model="entity.country_code"
ng-options="c.code as (c.name + ' ('+ c.code + ')') for c in countries">
</select>