2016-12-19 7 views
0

私は角度チュートリアルに従っており、チェックボックスからのngTrueValue/ngFalseValue角度指示を自分自身で紹介しています。数字だけにngTrueValueとngFalseValueを表示する

htmlコードのように:

<div ng-app=""> 
    <div ng-controller="Controller"> 
    {{c.value}} 
    <input type="text" value="{{c}}"/> 
     <input type="checkbox" ng-model="c.checkbox1" ng-true-value="1" ng-false-value="0" ng-checked="checkbox == 1" /> 
     <input type="checkbox" ng-model="c.checkbox2" ng-true-value="2" ng-false-value="1" ng-checked="checkbox == 1" /> 
    </div> 
</div> 

スクリプトコードのよう:

function Controller($scope) { 
    $scope.checkbox = 1; 

    $scope.$watch(function(){ 
     return $scope.checkbox; 
    }, function(){ 
     $scope.checkbox = Number($scope.checkbox); 
     console.log($scope.checkbox, typeof $scope.checkbox); 
    },true); 
} 

実行上のタイムコード出すディスプレイ:

{ "CheckBox1を": "1"、」チェックボックス2 ":" 1 "}

は、このようなテキスト表示を表示しない:

{ "1"、 "2"}

+1

'{{c}}'を使用しているので、完全なオブジェクトが表示されます。 – SaiUnique

+0

はい、私はanglejsの新機能を教えてください – Ankit

+0

期待しているテキスト( '{" 1 "、" 2 "}')は有効なJSONでさえありません。なぜこのような無効なJSONが表示されると思いますか?あなたは何を達成しようとしていますか? –

答えて

0

あなたはこのように書くことができます。

{{c.checkbox1 + "," + c.checkbox2}}

あなたはこのときを行うことができます多くの値があります:

<div ng-repeat="data in c track by $index"> 
    {{c.checkbox+$index}} 
</div> 
+0

この正解に感謝saiこの正解がありますが、それは静的に動作しますが、動的値はその時間よりもどのように使用するのですか? – Ankit

+0

saiありがとうございますが、私はその問題が遅くなる:http://stackoverflow.com/a/41219128/7255740 – Ankit

+0

申し訳ありませんが、あなたが言っていることを理解していない。 – SaiUnique

0

<!DOCTYPE html> 
 
<html> 
 
<head> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.0/angular.min.js"></script> 
 
    <meta charset="utf-8"> 
 
    <title>JS Bin</title> 
 
</head> 
 
<body ng-app='test' ng-controller="Test"> 
 
<div ng-repeat="album in albums"> 
 
<input type="checkbox" ng-model="album.selected" value={{album.name}} /> {{album.name + ","}} 
 
    </div> 
 
    
 
    
 
    <button type='button' ng-click="save1()">Save</button><br> 
 
    Saved results:<br> 
 
    {{albumNameArray}}<br> 
 
{{''+ albumNameArray + ''}} 
 
    <script> 
 
    angular.module('test', []) 
 

 
.controller('Test', function($scope){ 
 
    $scope.albums = [{ 
 
    id: 1, 
 
    name: 'test1' 
 
    }, 
 
    { 
 
    id: 2, 
 
    name: 'test2' 
 
    }, 
 
    { 
 
    id: 3, 
 
    name: 'test3' 
 
    }]; 
 
    
 
    $scope.save1 = function(){ 
 
    $scope.albumNameArray = []; 
 
    angular.forEach($scope.albums, function(album){ 
 
     if (album.selected) $scope.albumNameArray.push(album.name); 
 
    }); 
 
    } 
 
}) 
 
    
 
    </script> 
 
</body> 
 
</html>

関連する問題