时间:2021-05-28
html:
<div ng-controller="mySelectController"><select ng-model="myField" ng-options="Field.label for Field in names" ng-change="mySelectControllerChange()"><option value=''>{{'SELECT.LABEL.VXI.CUSTOM.SELECT' | translate}}</option></select></div> <div ng-controller="myRelationController"><select ng-model="myRelation" ng-options="relation.name for relation in relationList" ><option value=''>{{'SELECT.LABEL.VXI.CUSTOM.SELECT' | translate}}</option></select></div>js:
var mySelectController=['$scope', '$http', '$rootScope', function($scope, $http, $rootScope) { //$http的method可以是get/delete/head/jsonp/post/put //$http服务快捷的get请求 //alert('root=='+ACTIVITI.CONFIG.contextRoot);//对应/activiti-explorer/service $http({ method:'PUT', url:ACTIVITI.CONFIG.contextRoot +'/getFormFieldList' }) .success( function(data,status,headers,config){ //成功加载 $scope.names=data; }) .error( function(data,status,headers,config){ //处理错误 //do nothing } ); //change $scope.mySelectControllerChange=function(){ var app=angular.module('activitiModeler',[]); if($scope.myField.optionGroupId!=null && $scope.myField.optionGroupId!=''){ //有optionGroup console.log('if'); $rootScope.relationList = [{id:0,name:'等于'},{id:1,name:'不等于'},{id:2,name:'包含'}]; }else{ //没有optionGroup console.log('else'); $rootScope.relationList = [{id:0,name:'等于'},{id:3,name:'大于'},{id:4,name:'小于'},{id:5,name:'小于等于'},{id:6,name:'大于等于'},{id:2,name:'包含'}]; } } }];//AngularJS $emit $broadcast $on
//change $scope.mySelectControllerChange=function(){ var data=null; if(null==$scope.myColumnSelectModel){ data={ pa:'', pb:'' }; }else{ data={ pa:$scope.myColumnSelectModel, pb:$scope.myColumnSelectModel.optionGroupId }; } $scope.$emit('to_myParentController_on_myColumnSelectModel_change',data); } angular.module('activitiModeler').controller('myParentController',['$rootScope', '$scope', '$http', '$timeout','$window', function ($rootScope, $scope, $http, $timeout,$window) { //选择字段下拉列表,触发关系符下拉 $scope.$on('to_myParentController_on_myColumnSelectModel_change',function(event,data){ $scope.$broadcast('to_myRelationController_on_myColumnSelectModel_change',data); }); }]); angular.module('activitiModeler').controller('myRelationController',['$rootScope', '$scope', '$http', '$timeout','$window', function ($rootScope, $scope, $http, $timeout,$window) { $scope.myRelationDisableVar=true; $scope.objDisableTrue=true;//加上灰背景 //接收事件-根据字段显示下拉 $scope.$on('to_myRelationController_on_myColumnSelectModel_change',function(event,data){ if(data.pa!=''){ $scope.myRelationDisableVar=false; $scope.objDisableTrue=false;//去掉灰背景 if(data.pb!=null && data.pb!=''){ //有optionGroup $scope.relationList = [{id:0,name:'等于'},{id:1,name:'不等于'},{id:2,name:'包含'}]; }else{ //没有optionGroup $scope.relationList = [{id:0,name:'等于'},{id:3,name:'大于'},{id:4,name:'小于'},{id:5,name:'小于等于'},{id:6,name:'大于等于'},{id:2,name:'包含'}]; } }else{ $scope.relationList=null; $scope.myRelationDisableVar=true; $scope.objDisableTrue=true;//加上灰背景 } }); }]);以上这篇Angularjs 根据一个select的值去设置另一个select的值方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1.级联select的操作,后一个select的值随着前一个select选中值变化$(".select_A").change(function(){$(".se
AngularJS的select设置默认值在使用Angular时候使用select标签时会遇到绑定数据指定默认显示值可这样实现angular.module("n
背景前台页面两个select框,一个与学院关联,另一个与专业关联,现需要选择学院select框后,显示学院相关信息,且专业select下面仅有属于该学院的专业名
我们在jsp定义一个select和一个table,要求实现根据select的选值,动态加载table数据。table第一次加载数据的function定义如下:f
SQLServer推荐使用SET而不是SELECT对变量进行赋值。当表达式返回一个值并对一个变量进行赋值时,推荐使用SET方法。下表列出SET与SELECT的区