【发布时间】:2017-03-07 18:51:54
【问题描述】:
如何在提交表单时避免在表单中提交状态(以及ng-submitted 类和提交范围属性为真布尔值)?
更新:
( function() {
angular
.module( 'app', [] )
.controller( 'SubmitController', SubmitController );
function SubmitController() {
var vm = this;
vm.submit = submit;
function submit( e ) {
console.log( 'Submit!' );
e.stopPropagation();
}
}
} )();
form,
[ng-form] {
padding: 1em;
border: 1px solid black;
}
.ng-submitted {
border: 1px solid red;
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.6/angular.min.js"></script>
<div ng-app="app">
<div ng-controller="SubmitController as vm">
<div ng-form>
<form novalidate ng-submit="vm.submit($event)">
<input type="text">
<button type="submit">Submit</button>
</form>
</div>
</div>
</div>
主要目标是提交事件未触发且未到达父元素 ([ng-form])。
【问题讨论】:
-
As I said in GitHub, here 是关于它的 CodePen 示例。 “为什么提交会传播给父母而不是阻止?”。
-
所以您希望不提交子表单和父表单,还是只提交其中一个?
-
至少,父级停止传播。
-
我不清楚你在问什么,甚至四个人都回答了。
-
一种防止和停止提交事件传播的机制。
标签: css angularjs forms angularjs-scope form-submit