[英]How to make control forcefully non mandatory in submit button
我在表单中有一个文本框A和两个按钮B&C。
如果我不填写文本框A中的任何内容
HTML文件
<form name="nm_eventform" novalidate>
<input type="text" ng-model="md_eventname" name="nm_evtname" required />
<div ng-messages="nm_eventform.nm_evtname.$error" role="alert">
<div ng-message="required" class="divMasterMsg">Event Name is required</div>
</div>
<button type="submit">B</button>
<button type="submit" ng-click="ButtonC()">C</button>
</form>
因为我需要所以我不需要在ButtonB()中写任何东西。 因为我想在ButtonC()中禁止强制条件,所以我使用$ setValidity但它没有使我的表格有效。
JS档案
$scope.ButtonC= function () {
$scope.nm_eventform.nm_evtname.$setValidity('required', false);
if ($scope.nm_eventform.$valid) {
}
}
我曾尝试过ng-required但它不适合我的情况。
您需要使用ng-required
而不是required
ng-required="{{editing == false ? true : false}}"
并根据您的按钮点击事件更改true或false值。
<form name="nm_eventform" novalidate>
<input type="text" ng-model="md_eventname" name="nm_evtname" ng-required="{{editing == false ? true : false}}" />
<div ng-messages="nm_eventform.nm_evtname.$error" role="alert">
<div ng-message="required" class="divMasterMsg">Event Name is required</div>
</div>
<button type="submit">B</button>
<button type="submit" ng-click="ButtonC()">C</button>
</form>
**For Js File:**
$scope.ButtonC= function () {
$scope.editing = true;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.