2017-06-22 4 views
0

これは新しく、ボタンを放したときに変数の値を変更したいと思います。 配列selectedValuesがあります。この配列には、プロジェクトのステータス(Ready/NotReady)が含まれています。JavaScriptの変数の値を変更する

私がしたいのは、ステータスがレディであればステータスをレディに変更し、レディであればレディに変更します。

これを行うにはjs関数が必要です。私はこのようにすることができるかどうか疑問に思っていましたか?

$scope.changeStatus = function(selectedValue){ 
    if(selectedValue.status == "Not_Ready") 
    selectedValue.status = "Ready" 
} 
+0

はいこれは可能です。何が問題なのですか? –

+1

変数の値を変更していない、オブジェクトのプロパティに値を代入しています(配列はオブジェクトです)。 – RobG

+0

@RobGどうすればそれを実行できますか? –

答えて

0

あなたにも、このようにそれを行うことができます:あなたは今まであなたを介してのサイクルが欲しい、よりステータスを追加した場合

$scope.changeStatus = function(){ 
    if($scope.selectedValue.status == "Not_Ready"){ 
     $scope.selectedValue.status = "Ready" 
    }else{ 
     $scope.selectedValue.status = "Not_Ready" 
    } 
} 
+0

あなたは私のやり方でブロックを追加しました。他には何もない。 –

+0

はい、選択した値の前にも$ scopeとして指定する必要があります。 –

+0

あなたは$ scope.selectedValueを意味しますか? –

1
$scope.changeStatus = function(selectedValue){ 
    selectedValue.status == "Not_Ready" ? selectedValue.status = "Ready" : selectedValue.status = "Not_Ready" 
} 

この

1

を試してみて、あなたが行うことができます

$scope.changeStatus = function(selectedValue) { 
    var statuses = ['State_A', 'State_B', 'State_C', 'State_D', 'State_E']; 

    selectedValue.status = statuses[(statuses.indexOf(selectedValue.status) + 1) % statuses.length]; 
}; 
関連する問題