gpt4 book ai didi

javascript - 只有在用户单击某个字段后,AngularJS Material 才会将必填字段变为红色

转载 作者:行者123 更新时间:2023-11-29 21:07:47 25 4
gpt4 key购买 nike

我有这个标记:

<md-input-container class="md-block" flex-gt-sm ng-show="$ctrl.isAddMode">
<label>ID</label>
<input name="id" ng-model="$ctrl.voice.id"
ng-model-options="{ debounce: 1000 }"
ng-change="$ctrl.verifyUniqueId()" required>
<div class='error' ng-show='$ctrl.idError'>
{{$ctrl.idError}}
</div>
</md-input-container>
<md-input-container class="md-block" flex-gt-sm>
<label>Name</label>
<input ng-model="$ctrl.voice.name" required>
</md-input-container>

<md-button ng-disabled="!$ctrl.isReadyForSubmit()"
class="md-raised md-primary"
ng-click="$ctrl.submit()">
{{$ctrl.voice.isTest ? "Start Test" : "Publish"}}
</md-button>

与:

self.isReadyForSubmit = function () {
return $scope.voiceForm.$valid && !uploadService.getClientErrorMsgOfUploadedFiles();
}

如果用户单击该字段,我的 txt 会变成红色,然后熄灭并且不会填充它。

enter image description here

但是,用户未点击的字段不会将其文本变为红色。

如果用户点击“提交”禁用按钮,我怎样才能让它们变红?

最佳答案

欢迎来到 Angular Material 限制的世界。看看这个code pen demo我创造了。您需要在 md-input-container 元素上手动设置 css 类 md-input-invalid,如果该字段无效 + 提交被按下。

<form name="projectForm">
<md-input-container class="md-block" ng-class="{ 'md-input-invalid': projectForm.description.$invalid && wasSend }">
<label>Description</label>
<input md-maxlength="30" required md-no-asterisk="" name="description" ng-model="project.description">
<div ng-messages="projectForm.description.$error">
<div ng-message="required">This is required.</div>
<div ng-message="md-maxlength">The description must be less than 30 characters long.</div>
</div>
</md-input-container>

<div layout="row">
<md-input-container flex="50" ng-class="{ 'md-input-invalid': projectForm.clientName.$invalid && wasSend }">
<label>Client Name*</label>
<input name="clientName" required ng-model="project.clientName">
<div ng-messages="projectForm.clientName.$error">
<div ng-message="required">This is required.</div>
</div>
</md-input-container>
<div>
<md-button type="submit" ng-click="wasSend = true">Submit</md-button>
</div>
</form>

关于javascript - 只有在用户单击某个字段后,AngularJS Material 才会将必填字段变为红色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43167465/

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