如何在应用过滤器后将第一个单选按钮设置为选中?

时间:2015-07-02 10:32:45

标签: asp.net-mvc angularjs

我有以下选择列表...

<select id="TicketTypeDropdown" data-ng-model="ticketSelection" class="railResultSelect">

                @foreach (var ticket in @Model.Fares.Select(a => a.Description).Distinct())
                {
                    <option>@ticket</option>
                }
            </select>

然后在故障单选项列表中设置过滤器...

                 <ul>                      
                        <li class="ticketPriceListItem" data-ng-repeat="fare in model.Fares | filter:ticketSelection" data-ng-checked="$first">
                            <label>
                                <input type="radio" tabindex="0" data-ng-value="fare" data-ng-model="$parent.selectedTicket" />
                                {{fare.Description}} <span class="right">£{{fare.Price}}</span>
                            </label>
                        </li>
                </ul>

一切正常。我遇到的问题是我希望始终选择第一个单选按钮。应用过滤器后,所选的单选按钮将消失。

即使应用过滤器后,如何始终选择第一个选项?非常感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

这可以帮助您解决遇到的问题。您可以在$scopeng-init中为您的条件声明启动值 - 您想要的地方。 不要忘记写自己的条件:

<input type="radio" tabindex="0" data-ng-value="fare" data-ng-model="$parent.selectedTicket" selected="{{someCondition ? 'selected' : '' }}" />

答案 1 :(得分:0)

使用ng-init

ng-init="$index==$first?$parent.selectedTicket=fare:null"