2014-09-25 44 views
4

我試圖從收音機列表中的單選按鈕中選中一個,但沒有運氣。Ionic + Angular無法默認檢查離子收音機

有人能告訴我我做錯了什麼嗎?

感謝您的任何幫助。

我試圖通過這種方式來做到這一點:

<div class="list"> 

     <ion-radio ng-repeat="item in goalTypeList" 
       ng-value="item.value" 
       ng-change="goalTypeChanged(item)" 
       ng-checked="item.selected" 
       ng-model="data.clientSide"> 
      {{ item.text }} 
     </ion-radio> 

    </div> 

JS:

.controller('SettingsCtrl', function($scope, $ionicLoading) { 

     $scope.goalTypeList = [ 
      { text: "Dials", value: "dials", selected: true }, 
      { text: "Conversations", value: "conversations" , selected: false }, 
      { text: "Appointments", value: "appointments" , selected: false }, 
      { text: "Orders", value: "orders", selected: false } 
     ]; 

     $scope.data = { 
      clientSide: 'ng' 
     }; 

     $scope.goalTypeChanged = function(item) { 
      console.log("Selected goalType, text:", item.text, "value:", item.value); 
     }; 

回答

1

值在$scope.data = { clientSide: 'ng' };不匹配$scope.goalTypeList任何值。

如果$scope.data上的clientSide值是dials,conversations,appointments或orders,那麼單選按鈕應該加載一個選中的單選按鈕。

我希望這會有所幫助。

+0

謝謝,但我不知道怎麼傳遞到$ scope.data? – 2014-09-25 14:14:43

+0

將$ scope.data中的clientSide值設置爲無論您想要作爲單選按鈕上選定的默認值。如果你不想在默認情況下選擇任何設置clientSide ='' – 2014-09-25 14:55:38

2

似乎data.clientSide的值不在列表goalTypeList中。改變以匹配任何值..

HTML:

<div class="list"> 

    <ion-radio ng-repeat="item in goalTypeList" 
      ng-value="item.value" 
      ng-change="goalTypeChanged(item)" 
      ng-checked="item.selected" 
      ng-model="data.clientSide"> 
     {{ item.text }} 
    </ion-radio> 

JS:

.controller('SettingsCtrl', function($scope, $ionicLoading) { 

    $scope.goalTypeList = [ 
     { text: "Dials", value: "dials", selected: true }, 
     { text: "Conversations", value: "conversations" , selected: false }, 
     { text: "Appointments", value: "appointments" , selected: false }, 
     { text: "Orders", value: "orders", selected: false } 
    ]; 

    $scope.data = { 
     clientSide: 'appointments' 
    }; 

    $scope.goalTypeChanged = function(item) { 
     console.log("Selected goalType, text:", item.text, "value:", item.value); 
    }; 
+0

請使用英語獲得答案,這使得它更容易理解。 – EWit 2014-12-17 20:29:09

+0

它感覺獨一無二,但StackOverflow是一個只有英文的網站。即使您的英語不是很好,也只能用英語回答。人們總是可以編輯你的答案來改善任何可能不清楚的事情。如果你對西班牙語的StackOverflow感興趣,這裏有一個提議:http://area51.stackexchange.com/proposals/42810/stack-overflow-in-spanish – 2014-12-17 21:04:41