2017-02-03 5 views
1

をチェックしていない私は内部ラジオボタンの束とng-repeatを有する:行が示されている場合AngularJS - ラジオボタン

<div class="panel panel-default" ng-repeat="offer in vm.offerList"> 
    ...  
    <td ng-show="offer.edit"> 
     <div class="row">       
      <input type="radio" name="before" ng-model="offer.before" value="false"> 
      <input type="radio" name="before" ng-model="offer.before" value="true"> 
     </div> 
    </td> 
    ... 
</div> 

正しい値を有するoffer.beforeモデルが、しかし、ラジオボタンがありませんチェックされたようです。なぜこうなった?選択した値を表示するにはラジオボタンが必要です。

これは私の問題のバイオリン例です:属性value内部の何かが値trueようtoString()を取得するのでhttp://jsfiddle.net/danielrvt/dpoLdgjq/

答えて

2

ではなくtrue'true'(文字列)(ブール値)を探し、それは意志& 'true'とさせていただきます。

value属性の代わりにng-valueを使用すると便利です。これはtrueの値をtrueのブール型の値として扱います。

name属性を各ラジオボタングループに一意にする必要があります。各offerラジオはユニークなフォーム要素とみなされます。ヘッドのおかげで、最大けど、私は... OPのフィドルとの答えを更新し

マークアップ

<div class="row"> 
    {{offer.before}} 
    <input type="radio" name="before{{$index}}" ng-model="offer.before" ng-value="false"> 
    <input type="radio" name="before{{$index}}" ng-model="offer.before" ng-value="true"> 
</div> 

Forked Fiddle

+1

@ChiefTwoPencils :) –

関連する問題