1
頁面加載後,模型和單選按鈕正確顯示。Angularjs:單選按鈕檢查狀態無法綁定模型值,當模型更改時
但是,當單擊按鈕更改列表項目的等級時,單選按鈕檢查狀態有些問題。您可以看到模型值是正確的,它顯示在左側。
那麼,爲什麼按鈕沒有檢查,以及如何解決它?
非常感謝
HTML:
<body ng-app="RadioApp">
<section ng-controller="RadioController">
<div ng-repeat="item in list">
<div ng-model="item.rank">Rank: {{$index + 1}}</div>
<div>
<span>{{item.flag}}</span>
<span><label><input type="radio" name="flag_{{$index}}" ng-model="item.flag" value="1">red</label></span>
<span><label><input type="radio" name="flag_{{$index}}" ng-model="item.flag" value="2">green</label></span>
<span><label><input type="radio" name="flag_{{$index}}" ng-model="item.flag" value="3">yellow</label></span>
<span><label><input type="radio" name="flag_{{$index}}" ng-model="item.flag" value="4">blue</label></span>
<span><label><input type="radio" name="flag_{{$index}}" ng-model="item.flag" value="5">pink</label></span>
</div>
</div>
<div>
<button ng-click="changRank()">change</button>
</div>
</section>
JS:
var app=angular.module("RadioApp", []);
app.controller("RadioController", function($scope){
$scope.list = [{flag:1},{flag:3},{flag:5}]
$scope.changRank = function(){
var targetRule = $scope.list.splice(2, 1);
$scope.list.unshift(targetRule[0]);
}
});
PS:我是一個新用戶,很抱歉無法提供的提問捕獲。
驚人的,它的工作原理。非常感謝你。你能解釋爲什麼可以顯示該值,但單選按鈕無法顯示,或者如果你有時間,可以給出一些提示來理解它。並且正在使用'track by $ index'ng-repeat的最佳做法? –
嗨,@菲爾。在我的項目中,它使用的Angular.js 1.0.3不支持按表達式進行跟蹤。如何解決該版本中的問題? –
不知道。你知道1.0.3現在快三歲了 – Phil