0

だから...私はng-repeatを使用してラジオボタングループを生成しようとしています:

<div class="btn-group yb-radiobuttons">
    <button type="button" class="btn" ng-model="radioModel" btn-radio="'all'">All locations ({{dreamboxItemsByDate.length}})</button> 
    <button type="button" class="btn" data-ng-repeat="(key, value) in items" ng-model="radioModel" btn-radio="'{{key}}'">{{key}} ({{value.length}})</button>
</div>

これにより、次の html が生成されます。

<div class="btn-group yb-radiobuttons">
    <button class="btn ng-pristine ng-valid ng-binding" btn-radio="'all'" ng-model="radioModel" type="button">All locations (10)</button>
    <button class="btn ng-scope ng-valid ng-binding ng-dirty active" btn-radio="'Brooklyn, New York'" ng-model="radioModel" data-ng-repeat="(key, value) in items" type="button"> Brooklyn, New York (6) </button>
    <button class="btn ng-scope ng-valid ng-binding ng-dirty active" btn-radio="'London, UK'" ng-model="radioModel" data-ng-repeat="(key, value) in items" type="button"> London, UK (2) </button>
    <button class="btn ng-scope ng-pristine ng-valid ng-binding" btn-radio="'Tokyo, Japan'" ng-model="radioModel" data-ng-repeat="(key, value) in items" type="button"> Tokyo, Japan (2) </button>
</div>

一見するとすべて良さそうに見えますが、repeat で生成されたボタン要素のいずれかをクリックしても、モデルはまったく設定されません。すべての場所のボタンをクリックするだけで、モデルが設定されます。

plnkr: http://plnkr.co/edit/J1LfRO?p=preview

なぜこれが起こっているのか/修正方法はありますか?

4

2 に答える 2

0

このスニペットの使用について:

<button type="button" class="btn" ng-repeat="(city, message) in items" ng-model="radio.model"     btn-radio="city">{{city}} ({{message}})</button>

ここで動作するjsFiddle:http://jsfiddle.net/Stego/fvDcS/

于 2013-10-25T09:54:29.973 に答える