angularjs 动态从后台获取下拉框的值

        angularjs 动态从后台获取下拉框的值,只要是使用repeat指令,后台提供的是一个list的对象,里面包含value和显示的值,如下:

        js文件:

       

 //职务等级和档次/军衔等级和档次,需要从后台获取:poslist,type:2/3/4/5
		$scope.getDyActivityInforItems=function(){
			serviceData.getData('inforinput/getAllSelectValueByType','POST',{
				type:2 
			}).then(function(json){
				if(json.code==0){
					$scope.poslist=json.content;
				};
			}, function(json){
				console.log(json);
			});
		};
     界面:

       <!-- 空格空开来区分职务等级 -->
<div class="item" style="border-top: 1px solid #ddd;padding-top: 2px;">
<label class="list_tit">职务等级</label>
<div class="item_input" ng-init="getDyActivityInforItems()">
    <!-- <select class="fillIn select-able" ng-model="item" ng-options="item as y for y in addInfo.posList" id="dutLevel_view_1" name="dutLevel">
                         </select> -->
                         
                         
                         <select class="fillIn select-able" ng-model="selectedPos" id="dutLevel_view_1" name="dutLevel">
                           <option ng-repeat="x in poslist" value="{{x.select_code}}">{{x.select_name}}</option>
                         </select>
                         
                         <span class="imp_list_rema">*</span>


<!-- 
<select class="fillIn select-able" ng-model="addInfo.addInfoView.positionRank"   >
<option value="" selected>请选择</option>
</select> -->

</div>
</div>

=================================分割线,2017年7月20日17:07:14-===================================

后面遇到一个问题,当新增了一个下拉选项,需要刷新了下拉的list,但就会默认显示第一个,没有获取刚开始显示界面的值,需要使用apply进行更新:

addInfo.addInfoView.positionRank=0;
						$scope.poslist=json.content;
						setTimeout(function() {  
					          $scope.$apply(function() {  
					        	  addInfo.addInfoView.positionRank=yuanPos;
					          });  
					    }, 1000); 

html上:

<!-- 空格空开来区分职务等级 -->
				<div class="item" style="border-top: 1px solid #ddd;padding-top: 2px;">
					<label class="list_tit">职务等级</label>
					<div class="item_input" ng-init="getPosMilSelectValue()">
                         <select class="fillIn select-able" ng-selected="addInfo.addInfoView.positionRank" ng-model="addInfo.addInfoView.positionRank" id="dutLevel_view_1" name="dutLevel">
                           <option ng-repeat="x in poslist" value="{{x.select_code}}">{{x.select_name}}</option>
                         </select>
                         <span class="imp_list_rema">*</span>
                         <span style="background:#3cb671;margin-left:20px;height:17px;width:20px"  ng-click="addInfo.viewInput_add_item=!addInfo.viewInput_add_item;addInfo.addItemName='';selectType=2">
                         <a  style="margin-left:7px;margin-top:2px"  href="javascript:;" title=""> + </a></span>
					</div>
				</div>
				


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值