質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
AngularJS

AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

Q&A

解決済

1回答

1781閲覧

AngularJSを使ったcheckboxの値の受け渡し

sato1108

総合スコア14

AngularJS

AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

0グッド

0クリップ

投稿2018/05/17 02:50

編集2018/05/17 04:50

前提・実現したいこと

AngularJSを使って複数のcheckboxを使用し、チェックされた値をhtmlで表示したいのですが、なかなかうまくいってくれません。
下記の<p ng-repeat="data in checks">{{data}}</p>の部分にチェックされたフルーツのフルーツ名が出てほしいと思っています。
知っている方おられましたらご教授いただければと思います。

該当のソースコード

js

1 $scope.fruits = [ 2 {id: 1, name: 'リンゴ'}, 3 {id: 2, name: 'バナナ'}, 4 {id: 3, name: 'グレープ'}, 5 {id: 4, name: 'オレンジ'}, 6 {id: 5, name: 'ピーチ'} 7 ]; 8 $scope.check = function() { 9 var checks = []; 10 angular.forEach($scope.fruits, function(value, index, array) { 11 if (value.checked) { 12 $scope.checks = checks.push(value.name); 13 console.log(value.name); 14 } 15 }); 16}

html

1<html ng-app="myApp"> 2<省略> 3<div ng-controller="AppController"> 4 <ul> 5 <li ng-repeat="fruit in fruits"> 6 <label><input type="checkbox" ng-model="fruit.checked">{{fruit.name}}</label> 7 </li> 8 </ul> 9 <button ng-click="check()">チェック</button> 10 <p ng-repeat="data in checks">{{data}}</p> 11</div> 12<省略> 13</html>

試したこと

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

karamarimo

2018/05/17 04:15

$scope.checks という statement がありますが、これは入力し間違いではないですか?
sato1108

2018/05/17 04:20

私の中ではchecks.push(value.checked);の記述でチェックされている値をchecksという変数に入れて、それをhtmlで表示できるように$scope.checksとしているつもりです。
karamarimo

2018/05/17 04:37

チェックされているものだけ checks という配列に入れるという部分のコードは分かるのですが、「$scope.checks」とだけ書いても何も起きないと思いますが...。また、checks という配列の要素として value.checked つまり true が入るわけですが、チェックされているフルーツの「名前」を表示したいわけなので value.name では?
sato1108

2018/05/17 04:52 編集

只今コードを少し修正しました。ご指摘ありがとうございます。しかし、やはり名前が表示されません。コンソールではしっかりとチェックされたフルーツの名前が表示されるのですが・・・
guest

回答1

0

ベストアンサー

Javascript

1$scope.check = function() { 2 var checks = []; 3 angular.forEach($scope.fruits, function(value, index, array) { 4 if (value.checked) { 5 checks.push(value.name); 6 } 7 }); 8 $scope.checks = checks; 9}

投稿2018/05/17 05:16

xenbeat

総合スコア4258

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sato1108

2018/05/17 05:36

でました!ありがとうございます!近そうなのに全然できなくてすごく困ってました。。。
xenbeat

2018/05/17 06:24 編集

よかったですー。
sato1108

2018/05/17 06:49

すみません。初めてでわかりませんでした。。ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問