2016-03-15 43 views
0

我有角度的形式,我正在使用md-select和md-option。但是當我點擊下拉菜單時,屏幕凍結,如果我通過檢查元素md-option將會看到。Angularjs md選項顯示在Inspect中,但不顯示在屏幕上

<md-select ng-model="Severities" placeholder="Select a Severity"> 
    <md-select-label>{{ Severities.name }}</md-select-label> 
    <md-option ng-value="opt.id" ng-repeat="opt in severities.availableOptions"> 
     {{ opt.name }} 
    </md-option> 
</md-select> 



$scope.severities= { 
    availableOptions: [ 
    { 
     id: '1', 
     name: 'name1' 
    }, 
    { 
     id: '2', 
     name: 'name2' 
    }, 
    { 
     id: '3', 
     name: 'name3' 
    } 
    ], }; 
+0

你能給一些控制器代碼嗎? –

+0

$ scope.severities = { availableOptions:[ {id:'1',name:'name1'}, {id:'2',name:'name2'}, {id:'3',name :'name3'} ], }; – user2902067

+0

當我按F12(檢查元素)時,md選項將具有所有值。但屏幕沒有顯示,並凍結屏幕 – user2902067

回答

0

試試這個我更喜歡使用NG-選項,而不是NG重複

<md-select ng-model="Severities" placeholder="Select a Severity" ng-option="opt as opt for opt in severities.availableOptions"> 

<ng-option ng-selected="true">Select Option</ng-option> 

</md-select> 
1
$scope.severities= { 
    availableOptions: [ 
      {id: '1', name: 'name1' }, 
      { id: '2', name: 'name2' }, 
      { id: '3', name: 'name3' } 
]}; 

在模型中$ scope.severities.name什麼和MD-選擇 - 標籤你正在使用這是錯誤的。

試試這個 -

<md-select ng-model="Severities" placeholder="Select a Severity"> 
    <md-option ng-value="opt.id" ng-repeat="opt in severities.availableOptions"> 
      {{ opt.name }} 
     </md-option> 
</md-select> 
+0

嘿,我已經刪除它,但仍然是同樣的問題。在Chrome中,我可以看到一些動作,當我點擊下拉菜單但屏幕凍結。 F12顯示所有元素,如

Warning
user2902067

+0

你可以做一個笨蛋嗎? –

+0

嘿,我發現了一些東西。這是被阻塞。 – user2902067

0

我有同樣的問題,同時從一個陣列生成值和NG-選擇使用它。據我所讀,ng-options有時可以通過ng-repeat使用。這可以使用備用如下:

<md-select ng-model="Severities" id="Severities"><ng-options ng-repeat="opt in severities.availableOptions" ng-value="{{opt.name}}">{{opt.name}}></ng-options></md-select> 

控制器代碼將如下

$scope.severities= { 
availableOptions: [ 
     {id: '1', name: 'name1' }, 
     { id: '2', name: 'name2' }, 
     { id: '3', name: 'name3' } 

]};

但我已經使用JavaScript來獲取在ng-options中選擇的值。

var severity = document.getElementById("Severities").value; 

稍後處理存在於變量嚴重性中的嚴重性值。

+0

如果使用angularJS不需要使用javascript來獲得下拉的值ng-model用於相同的目的 –

+0

是的,但我無法從控制器中的ng模型中獲取值..如果使用$ scope。 modelName並提醒它,警報說undefined..so我使用的是javascript .. –

+0

在你的代碼中,我認爲你已經錯過{{}}這些括號中的ng值屬性..如果你使用它,我認爲下拉會出現.. –