前提・実現したいこと
AngularJSでチェックボックスの値の結果をボタン(下記の完了ボタン)を押すことにより画面遷移と同時にデータを持っていき、別ページに選択したチェックボックスのvalue(下記の場合フルーツ名)を表示するというアプリケーションを作っています。同じページでは値をチェックボックスの下に表示できるのですが、別ページに表示となると何をどうしていいのか全くわかりません。
画面遷移は今のところ<a>タグを使って行っています。
知ってらっしゃる方居ましたらご教授お願いいたします。
該当のソースコード
html
1**index.html** 2 3<!DOCTYPE HTML> 4<html ng-app="myApp"> 5 6<省略> 7 8<div ng-controller="AppController"> 9<ul> 10 <li ng-repeat="fruit in fruits"> 11 <label><input type="checkbox" ng-model="fruit.checked">{{fruit.name}}</label> 12 </li> 13</ul> 14<a href="test.html" ng-click="check()"> 15 完了 16</a> 17 <p ng-repeat="data in foods">{{data}}</p> 18 19</div> 20</body> 21</html>
html
1**test.html** 2 3<!DOCTYPE HTML> 4<html ng-app="myApp"> 5 6<省略> 7 8<div ng-controller="NewAppController"> 9 10<p ng-repeat="data in testVar">{{data}}</p> 11 12</div> 13</body> 14</html>
js
1 2var testVar = []; 3 4var app = angular.module('myApp', []); 5 6//遷移元コントローラー 7app.controller('AppController', function($scope) { 8 $scope.fruits = [ 9 {id: 1, name: 'リンゴ'}, 10 {id: 2, name: 'バナナ'}, 11 {id: 3, name: 'グレープ'}, 12 {id: 4, name: 'オレンジ'}, 13 {id: 5, name: 'ピーチ'} 14 ]; 15 16 $scope.check = function() { 17 18 angular.forEach($scope.fruits, function(value, index, array) { 19 if (value.checked) { 20 testVar.push(value.name); 21 console.log(value.name); 22 } 23 $scope.testVar = testVar; 24 }); 25 }; 26}; 27 28//遷移先コントローラー 29app.controller('NewAppController', function($scope) { 30 $scope.testVar; 31});
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/05/18 02:05
2018/05/18 02:27
2018/05/18 02:38
2018/05/18 03:04
2018/05/18 05:18 編集
2018/05/18 05:52
2018/05/18 06:04 編集
2018/05/18 07:00
2018/05/18 07:06
2018/05/18 09:04