根据DB中的值选择下拉值

时间:2017-02-13 14:11:59

标签: angularjs

我是角度JS的新手。我有一个下拉框,其中存在带有值的静态选项。 根据条件,我必须选择与Database中的值匹配的默认值。如何实现? 模型=" TemplateObj.IsActive"从DataBase获取int值0,1或2。



  <label class="">STATUS</label>
<select class="form-control input-sm" style="border: none" required ng-model="TemplateObj.IsActive" >
 <option value="2">In Development</option>
 <option value="1">Active</option>
 <option value="0">InActive</option>
 </select>
&#13;
&#13;
&#13;

3 个答案:

答案 0 :(得分:1)

ng-options指令与状态数组一起使用。对于初学者来说,语法可能看起来有点复杂,但有一天你会学到它:value as title for element in array

JS:

$scope.statuses = [{
    title: 'In Development',
  value: 2
}, {
    title: 'Active',
  value: 1
}, {
    title: 'Inactive',
  value: 0
}];

HTML:

<select ng-model="TemplateObj.IsActive" ng-options="status.value as status.title for status in statuses"></select>

以下是jsfiddle的工作示例。

答案 1 :(得分:1)

选项是使用 ng-options 指令。

文档为here,您可以从中引导很多示例。

答案 2 :(得分:0)

尝试ngOptions而不是普通return x > 0 ? x : throw new Exception();

DEMO

HTML select
var myApp = angular.module('myApp',[]);

myApp.controller('MyCtrl',function($scope) {
    
    $scope.status = [{
        title: 'In Development',
        value: 2
    }, {
        title: 'Active',
        value: 1
    }, {
        title: 'Inactive',
        value: 0
    }];
    
    $scope.TemplateObj = {
     "IsActive": 1
    } 
    
    
});