我无法使用AngularJS 1.4.7和Ionic 1.1.1检索无线电组的值;
任何想法都很好,谢谢。
请参阅问题的代码段:http://codepen.io/angsar/pen/RWdvrO
HTML
<html ng-app="app">
<head>
<link rel="stylesheet" href="http://code.ionicframework.com/1.1.1/css/ionic.min.css" />
<link href="http://code.ionicframework.com/ionicons/1.5.2/css/ionicons.min.css" rel="stylesheet">
<script src="http://code.ionicframework.com/1.1.1/js/ionic.bundle.js"></script>
</head>
<body ng-controller="myCtrl">
<ion-content padding="true">
<form class="list" ng-submit="Pass(test)">
<p>Selected Sample: {{test.val}}</p>
<ion-radio ng-model="test.val" ng-value="s1">Sample 1</ion-radio>
<ion-radio ng-model="test.val" ng-value="s2">Sample 2</ion-radio>
<button class="button button-energized button-large icon-right button-full">Test</button>
</form>
</ion-content>
</body>
</html>
Javascript
angular.module('app', ['ionic'])
.controller('myCtrl', function($scope) {
$scope.Pass = function($test) {
alert("Test: "+$test.val);
}
});
尝试以下操作:
angular.module('app', ['ionic'])
.controller('myCtrl', function($scope) {
$scope.test = {};
$scope.Pass = function($test) {
alert("Test: "+ $scole.test.val);
}
});
说明:
$test
未在您的$scope
中定义- 以
$
开头的变量在angular中有特殊含义,因此不应将它们用作常规变量名
更新:在双引号的ng值中单独输入字符串值也很重要
<ion-radio ng-model="test.val" ng-value="'s1'">Sample 1</ion-radio>
在阅读"已接受的答案"帖子之前,我已经设法解决了这个问题。下面是我提出的解决方案。
我已经用value替换了ng值,用test替换了test.val。
http://codepen.io/angsar/pen/LpvGzj
angular.module('app', ['ionic'])
.controller('myCtrl', function($scope) {
$scope.Pass = function($test) {
alert("Test: "+$test);
}; //pass
});
尝试以下操作,
html:
<form class="list" ng-init="test={}" ng-submit="Pass(test)">
angular.js
angular.module('app', ['ionic'])
.controller('myCtrl', function($scope) {
$scope.Pass = function(test) {
alert("Test: "+test.val);
}
});
代码笔:http://codepen.io/mohanapriya/pen/BzpzZx?editors=1010