Ionic フレームワークを使用して、ラジオ ボタンとして機能する 3 つのボタンのグループを作成しようとしています。
[朝食] をクリックすると、[昼食] と [夕食] が通常の (白) 状態に戻り、[朝食] が青に変わります。
現在のコードでは、この機能を動作させることはできませんが、ボタンの色を少しランダムに切り替えることはできます (おそらく、ng-class
ディレクティブを理解していないだけです)。
ここに私のHTMLコードがあります:
<div class="bar bar-subheader">
<div class="button-bar">
<a class="button" ng-class="{'button-positive' : !isActiveB, 'none': isActiveB}" ng-click="active('breakfast')">Breakfast</a>
<a class="button" ng-class="{'button-positive' : !isActiveL, 'none': isActiveL}" ng-click="active('lunch')">Lunch</a>
<a class="button" ng-class="{'button-positive' : !isActiveD, 'none': isActiveD}" ng-click="active('dinner')">Dinner</a>
</div>
</div>
私のJS:
$scope.active = function(meal) {
switch (meal) {
case 'breakfast':
$scope.$broadcast('slideBox.setSlide', 0);
$scope.isActiveB = $scope.isActiveB;
$scope.isActiveL = !$scope.isActiveL;
$scope.isActiveD = !$scope.isActiveD;
break;
case 'lunch':
$scope.$broadcast('slideBox.setSlide', 1);
$scope.isActiveB = !$scope.isActiveB;
$scope.isActiveL = $scope.isActiveL;
$scope.isActiveD = !$scope.isActiveD;
break;
case 'dinner':
$scope.$broadcast('slideBox.setSlide', 2);
$scope.isActiveB = !$scope.isActiveB;
$scope.isActiveL = !$scope.isActiveL;
$scope.isActiveD = $scope.isActiveD;
break;
}
};
より多くの情報と実用的なソリューションが必要な場合は、コードを JSFidle に入れることができます。
ご協力いただきありがとうございます。
注: この関数に依存する他の多くのコードがあるため、active()
関数を維持し、ng-class
可能であればディレクティブを使用したいと考えています。