Angularjs 在选择中使用ng选项或ng重复?
我想在angularjs中使用select。 我有一个json,每个元素都有两部分:名称和值。我想在下拉列表中显示名称,当用户选择其中一个主题时,值是复制到ng模型 为此,我有两种选择方法: ng选项: 我使用如下ng选项:Angularjs 在选择中使用ng选项或ng重复?,angularjs,Angularjs,我想在angularjs中使用select。 我有一个json,每个元素都有两部分:名称和值。我想在下拉列表中显示名称,当用户选择其中一个主题时,值是复制到ng模型 为此,我有两种选择方法: ng选项: 我使用如下ng选项: <select ng-model="model.test" ng-options="element.name for element in list"></select> $scope.model.test = {name:"element1",v
<select ng-model="model.test" ng-options="element.name for element in list"></select>
$scope.model.test = {name:"element1",value:1}
我可以用角度控制器解决这个问题,但我想找到一个更好的方法来解决这个问题
为了解决这个问题,我使用第二种方法:
2.在选项中使用ng repeat:
我使用下面的代码,但它们都向模型返回字符串值
<option ng-repeat="element in list" value={{element.value}}>{{element.name}}</option>
<option ng-repeat="element in list" value="{{element.value}}|number:0">{{element.name}}</option>
<option ng-repeat="element in list" value={{element.value}}|number:0>{{element.name}}</option>
如何解决这个问题 您是否尝试过以下方法:
<select ng-model="model.test" ng-options="element.value element.name for element in list"></select>
顺便说一句,如果您的列表中可能有数百条记录,那么您应该创建自己的指令,在该指令中,您可以使用一个简单的javascript for循环来操作DOM
ng repeat渲染速度较慢,
ng选项将每条记录添加到$watch中。您是否尝试过以下方法:
<select ng-model="model.test" ng-options="element.value element.name for element in list"></select>
顺便说一句,如果您的列表中可能有数百条记录,那么您应该创建自己的指令,在该指令中,您可以使用一个简单的javascript for循环来操作DOM
ng repeat渲染速度较慢,
ng选项将每条记录添加到$watch中。您也可以使用ng选项解决它
ng-options="element.value as element.name for element in list"
请阅读了解更多有关ng选项的信息
ng选项的另一个优点是,如果您想将所选对象附加到ng模型,它会绑定对象而不是json字符串。您也可以使用ng选项解决它
ng-options="element.value as element.name for element in list"
请阅读了解更多有关ng选项的信息
ng选项的另一个优点是,如果您想将所选对象附加到ng模型,它将绑定对象而不是json字符串。ng options=element.value as element.name for element in listOptions=element.value as element.name for element in listwith 1.3如果您不想将每个记录添加到$watch like in::listwith 1.3,您可以控制不想将每个记录都添加到$watch,如::列表中
ng-options="element.value as element.name for element in list"