在我的AngularJS网络应用程序中,

柱塞:https://plnkr.co/edit/x9uIx5Inkxxt3fqttkkK?p=preview

我的下拉菜单之一(第一个)未保留所选的值。
html代码片段如下。

我知道这与映射ng-model =“ entityPropertyType.propertyId”有关

EntityPropertyType是列表中的迭代值。

的HTML

        <div class="form-group" ng-repeat="entityPropertyType in advancedSearch.entityPropertyTypes" >

        <label class="control-label col-md-1">Business Card</label>
        <div class="col-md-2">
            <select class="form-control" ng-model="entityPropertyType.propertyId"
                ng-change="businessCardSelected($index, entityPropertyType.propertyId)" >
                <option value="">Please select</option>
                <option ng-repeat="property in businessCards" value="{{property.propertyId}}">{{property.propertyLabel}}</option>
            </select>
        </div>


    </div>

最佳答案

您永远不要使用ngRepeat呈现选择选项。使用ngOptions指令:

<select class="form-control"
        ng-options="property.propertyId as property.propertyLabel for property in businessCards"
        ng-model="entityPropertyType.propertyId"
        ng-change="businessCardSelected($index, entityPropertyType.propertyId)">
    <option value="">Please select</option>
</select>


演示:https://plnkr.co/edit/v6KbJSkqu5XNz2LUfbrK?p=preview

关于javascript - AngularJS-下拉列表不保留所选值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38765010/

10-09 22:55