gpt4 book ai didi

javascript - 我使用 ng-class 有什么问题?

转载 作者:行者123 更新时间:2023-11-30 09:37:51 25 4
gpt4 key购买 nike

我正在使用 ui-router,下面的 View 使用 'Controller As' 语法访问 Controller 。我将“无效”类添加到 'shift'-radios 容器中。加载表单时,您可以看到两个验证required 消息(对于requestDateshift)。当 requestDateshift 设置时,验证消息消失。表单的 $valid 为真。唯一的问题是 radio-wrapper div 上的 'invalid' 类保留了下来。

我做错了什么?

<form novalidate ng-submit="_form.$valid && formCtrl.getFormData()" name="_form">
<div class="datepicker-wrapper clearfix">
<datepicker date-format="yyyy-MM-dd">
<input required ng-model="formCtrl.requestDate" name="requestDate" type="text" />
</datepicker>
</div>
<div ng-messages="_form.requestDate.$error" role="alert">
<div ng-message="required">Введите дату</div>
</div>
<div class="radio-wrapper clearfix" ng-class="{invalid: _form.shift.$error}">
<div ng-repeat="shift in formCtrl.shifts" class="item half-width pull-left">
<label for="<% shift.name %>">
<input required ng-model="formCtrl.currentShift"
name="shift"
ng-value="shift"
id="<% shift.name %>"
type="radio" />
<span class="text"><span ng-bind="shift.text"></span></span>
</label>
</div>
</div>
<div ng-messages="_form.shift.$error" role="alert">
<div ng-message="required">Укажите смену</div>
</div>
<!-- other inputs... -->
</form>

最佳答案

我认为您需要使用 $invalid 属性,它是一个 bool 值,而不是 $error 属性,它是一个哈希值。

参见:https://docs.angularjs.org/api/ng/type/ngModel.NgModelController

关于javascript - 我使用 ng-class 有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42629953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com