[英]Angular - Ng-change return always the same value
我想問一下,如何從廣播列表中獲取選定的值?
我嘗試了ng-change,並觀察了作用域,但始終只有在應用程序初始化期間設置到模型中的第一個值。
這是我的代碼示例:
單選按鈕組:
<div class="list" ng-contoller="SettingsCtrl">
<ion-radio ng-model="choice" ng-value="'dials'">Dials</ion-radio>
<ion-radio ng-model="choice" ng-value="'conversations'">Conversations</ion-radio>
<ion-radio ng-model="choice" ng-value="'appoitnments'">Appointments</ion-radio>
<ion-radio ng-model="choice" ng-value="'orders'">Orders</ion-radio>
</div>
JS:
// Default choice scope
$scope.choice;
$scope.$watch('choice', function(value) {
// Here i get always the same value
console.log("Selected goalType, text: " +value);
});
如何獲得選定的值並將其設置到示波器中?
謝謝你的幫助。
在不使用離子框架和輸入單選按鈕的情況下,它可以正常工作。 您在這行<div class="list" ng-contoller="SettingsCtrl">
上犯了一個錯誤。 您忘記了控制器中的r。
這是工作代碼:HTML
<!DOCTYPE html>
<html ng-app="app">
<head>
<script data-require="angular.js@1.2.25" data-semver="1.2.25" src="https://code.angularjs.org/1.2.25/angular.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body >
<div class="list" ng-controller="SettingsCtrl">
<input type="radio" ng-model="choice" ng-value="'dials'">Dials
<input type="radio" ng-model="choice" ng-value="'conversations'">Conversations
<input type="radio" ng-model="choice" ng-value="'appoitnments'">Appointments
<input type="radio" ng-model="choice" ng-value="'orders'">Orders
</div>
</body>
</html>
和JavaScript:
var app = angular.module('app', []);
app.controller('SettingsCtrl', function($scope){
$scope.choice;
console.log('ctrl');
$scope.$watch('choice', function(value) {
// Here i get always the same value
console.log("Selected goalType, text: " +value);
});
});
您可以在這里看到它的工作: http : //plnkr.co/edit/TRJKW7eOlBek6TditM1B?p=preview
編輯我已經用離子框架對其進行了測試。 它也正在工作。 因此,這只是問題所在。
我為你做了這個小提琴 。 選擇radio
, $scope.currentSelection
更改,這樣您將知道哪個是當前選定的目標。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.