在过去的几天里,我遇到了很多问题。基本上,我试图基于数据库返回的JSON创建一系列下拉菜单。两天前,我还可以让它正常工作,但我们只是重写了后端代码,返回了一个不同格式的JSON,我必须重写很多东西才能让它正常运行。我们的名称JSON的格式是:
provisions: {
NAME OF DROPDOWN MENU1: [VALUE1, VALUE2, VALUE3, ..],
NAME OF DROPDOWN MENU2: [VALUE1, VALUE2, VALUE3, ..],
NAME OF DROPDOWN MENU3: [VALUE1, VALUE2, VALUE3, ..]
}
基于这个JSON,我想创建3个下拉菜单,其中包含相关的值。我还希望能够显示之前保存的服务器返回的数据(例如,如果用户在第一个下拉列表中选择值2并保存页面,则下次访问该页面时,第一个下拉菜单将显示值2(。
这是我目前必须尝试并显示下拉菜单的HTML:
<form class="form-horizontal" ng-controller="GamePreferenceCtrl">
<div ng-repeat="(name, section) in gameConfigs">
<label ng-bind="name"></label>
<select class="form-control" ng-model="formData.settings[$index].value" ng-change="dropdownItemClicked(name, formData.settings[$index].value)">
<option value="" disabled="disabled">---Please Select Option---</option>
<option ng-repeat="item in section" value="{{item.value}}" ng-bind="item.value"></option>
</select>
</div>
<div class="col-md-12" ng-include="gametemp"></div>
<div class="row">
<div class="hr-line-dashed"></div>
<div class="text-center col-md-12 padding-15">
<button class="btn btn-primary btn-lg" ng-click="saveGameSetting()" formnovalidate translate>
<i class='fa fa-circle-o-notch fa-spin' ng-if="showBusy"></i> Save
</button>
</div>
</div>
</form>
这样写的方式会显示下拉菜单,上面有合适的名称,但下拉菜单中的每个选项都是空白的。如有任何帮助,我们将不胜感激。非常感谢。
你试过这样做吗?
<option ng-repeat="item in section" value="{{item.value}}">{{item.value}}</option>
我不确定ng-bind
是否可以访问item.value
,因为ng-repeat
在同一个元素上,所以这可能会更好地工作。