Javascript 设置组合框从控制器中选择的值
我有一个组合框,我正在尝试从控制器设置所选值。我该怎么做Javascript 设置组合框从控制器中选择的值,javascript,angularjs,Javascript,Angularjs,我有一个组合框,我正在尝试从控制器设置所选值。我该怎么做 <md-select ng-model="selectedControl" ng-change="changeControl(selectedControl)" required> <md-option ng-repeat="control in controls" ng-value="control">{{control}}</md-option> </md-select> 控制
<md-select ng-model="selectedControl" ng-change="changeControl(selectedControl)" required>
<md-option ng-repeat="control in controls" ng-value="control">{{control}}</md-option>
</md-select>
控制阵列:
[{"ControlId":1,"ControlColumn":"Address","ControlText":"AddressTest"},{"ControlId":2,"ControlColumn":"City_State_Zip","ControlText":"CityTest"}]
在您的选项中,只需传递值
control
这将选择数组中的scond值,以便您可以根据需要对其进行修改。问题在于您的数据数组,因为您需要从要在选项中选择的数组中选择值本身,请尝试获取适当的数组或拆分数据,以便更好地控制下拉选择 工作
类型:
var myApp=angular.module('myApp',[]);
函数MyCtrl($scope){
$scope.controls=[{'ControlId':1,'ControlColumn':'Address','ControlText':'AddressTest'},{'ControlId':2,'ControlColumn':'City\u State\u Zip','ControlText':'CityTest'}];
$scope.selectedControl=$scope.controls[1];//从此处更改值
}
您能给我们看一下控件
阵列吗?顺便说一下,用{}
环绕control
如下:{{{control}}
这样您就可以得到该变量的值。谢谢。我正在从数据库中提取组合框的数据。我想动态选择不同的值。添加索引==selectedIndex,并根据您的要求从控制器更新selectedIndexvalue。我可以按文本值而不是按索引。您可以试一试
[{"ControlId":1,"ControlColumn":"Address","ControlText":"AddressTest"},{"ControlId":2,"ControlColumn":"City_State_Zip","ControlText":"CityTest"}]
<div ng-app="myApp" ng-controller="MyCtrl">
<div class="col-xs-12">
<label class="col-xs-6 control-label">Type:</label>
<div class="col-xs-6">
<select name="type" ng-model="selectedControl" ng-dropdown required ng-change="changeControl(selectedControl)" ng-options="control.ControlText for control in controls">
</select>
</div>
</div>
</div>
var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.controls = [{ 'ControlId': 1, 'ControlColumn': 'Address', 'ControlText': 'AddressTest' }, { 'ControlId': 2, 'ControlColumn': 'City_State_Zip', 'ControlText': 'CityTest' }];
$scope.selectedControl = $scope.controls[1]; // change the value from here
}