使用动态选择的选项删除select上的无效,空和未触摸的类

时间:2017-01-03 16:10:50

标签: angularjs

我有这段代码:

HTML:

                <div class="row">

                    <div class="col-md-6">

                        <md-input-container>
                            <label>Country</label>
                            <md-select required ng-model="model.userCountry" id="res_country" name="res_country" ng-change="updateTimeZone(model.userCountry)" aria-label="select">
                                <md-option ng-repeat="country in country" value="{{country.gid}}"> {{country.name}} </md-option>
                            </md-select>
                        </md-input-container>

                    </div>

                    <div class="col-md-6">

                        <md-input-container id="timezone">
                            <label>Timezone</label>
                            <md-select required ng-model="model.userZone" id="res_zone" name="res_zone" aria-label="select">
                                <md-option ng-repeat="zone in zone" value="{{zone.gid}}"> {{zone.name}} </md-option>
                            </md-select>
                        </md-input-container>

                    </div>
                </div>

在我的控制器功能中,我根据所选国家/地区获取时区列表。当我选择一个国家/地区时,如果只有一个时区,则默认情况下会选中该区域。

我的问题是,当我使用之前保存的国家/地区和时区加载视图时,时区选择具有ng-empty和ng-invalid类,如果我再次选择相同的选项,则会将其标记为错误。另一种情况是当我选择一个有2个或更多时区的国家时,之后选择另一个只有1的国家。时区将被选中,但也被标记为错误。我该如何删除这些课程?

1 个答案:

答案 0 :(得分:0)

我刚刚更改了所需的道具并添加了此项:

ng-required="!model.userZone"

这样,只有在没有选定值

的情况下,输入才会被标记为错误