繁体   English   中英

当未填写必填字段时,不调用角提交

[英]Angular submit not called when required fields not filled

我正在用Ionic在Angular中创建一个表单。 我不希望显示红色错误类,除非用户提交了表单。 因此,我的代码如下所示:

<form ng-submit="submit()" name="form">
     <ion-radio ng-repeat="item in items" ng-model="data.type" name="type" ng-value="item.value" ng-class="{'error' : form.type.$invalid && formSubmitted }"
</form>

然后在我的控制器中

$scope.submit = function ()
{
   $scope.formSubmitted = true; //Tell our errors they can show now
}

因此,仅当formSubmitted为true时,错误类才应显示。 但是,无论出于何种原因,都required阻止submit被调用。 其他属性(例如minlength)则不是这种情况。

如何获得我想要的行为?

您需要在表单中添加novalidate

原因是,您的浏览器正在验证您的表单,而不是让您的代码来执行它。

或者,执行以下操作:

<form ng-submit="submit()" name="form" novalidate>
     <ion-radio ng-repeat="item in items" ng-model="data.type" name="type" ng-value="item.value" ng-class="{'error' : form.type.$invalid && form.$submitted }"
</form>

form.$submitted将在您提交时变为true。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM