我有一个下拉列表,使用带有AngularJS的select和option标签,引用一个模型,就像这样。
Shader
此下拉列表列出了用户可以选择的七个位置ID。
但是,我有另一个模型从另一个条目中显示特定的位置ID;此位置ID肯定是上面下拉列表中显示的位置ID之一。请拨打此Shader
。这只是一个数字。
如果此位置ID与上方下拉列表中的某个位置ID匹配,我希望显示<select id="edit-location" class="" ng-model="packageLoc">
<option ng-repeat="x in loc" value="{{ x.locationId }}">{{ x.locationLoc }} - ({{ x.locationFloor }}{{ x.locationBuilding }})</option>
</select>
关键字,使上面的下拉列表显示我的第二个模型中的位置ID。
我已尝试使用ng-if实现此功能。但我没有成功。见下文:
packageSearch.locationId
如果该元素的值与其他模型的数据匹配,我如何将selected
关键字应用于其中一个<select id="edit-location" class="" ng-model="packageLoc">
<option ng-repeat="x in loc" value="{{ x.locationId }}" ng-if="{{ x.locationId === packageSearch.locationId" selected>{{ x.locationLoc }} - ({{ x.locationFloor }}{{ x.locationBuilding }})</option>
</select>
元素?
答案 0 :(得分:3)
答案 1 :(得分:1)
我建议您在满足此条件时使用正确的值设置模型(packageLoc),而不是添加所选属性。
假设你有另一个选择设置packageSearch,你可以这样做:
<select id="search-location" ng-model="packageSearch" ng-change="setLocation()">
<option ng-repeat="..."></option>
</select>
在控制器的setLocation函数中,您可以编写如下内容:
packageLoc = packageSearch; (or whatever you'd like to do here)