如何防止角度表单在无效时被发送到php文件(method=";post";)?
我猜在这种情况下,Angular的默认设置是添加ng disabled to submit按钮。如果是这样,用户可能会被警告每个输入中的错误,但错误会立即显示出来。是否有一种方法(通过控制器中的函数或其他方式)仅在onclick之后显示错误,而不实际提交表单并在表单无效时发送给php HTML如何防止角度表单在无效时被发送到php文件(method=";post";)?,php,angularjs,forms,Php,Angularjs,Forms,我猜在这种情况下,Angular的默认设置是添加ng disabled to submit按钮。如果是这样,用户可能会被警告每个输入中的错误,但错误会立即显示出来。是否有一种方法(通过控制器中的函数或其他方式)仅在onclick之后显示错误,而不实际提交表单并在表单无效时发送给php HTML <form name="myForm"> <input type="text" name="textField" ng-model="textField"/>
<form name="myForm">
<input type="text" name="textField" ng-model="textField"/>
<md-button type="button"
class="btn-width-medium md-raised md-primary"
ng-click="validateForm()">
Save
</md-button>
</form
关于这个主题,有大量的文档,这些文档太宽了,无法用一个单一的答案来回答:是的,我知道这种方法,但是这样做你不能调用检查表单并显示错误的函数。我想实际单击按钮(即使有错误)检查表单是否有错误并显示错误,但如果表单无效,则不提交表单(对php文件执行post操作)。如果要在提交后检查错误,请从表单中删除submit属性。我正在更新我的答案检查一下。谢谢,这是一个很好的观点。但是,如何仅在表单有效时在validateForm函数中触发submit?根据docks:ngSubmit“阻止默认操作(对于表单意味着将请求发送到服务器并重新加载当前页面),但前提是表单不包含操作”,因此ngSubmit不会与同一表单中的action=“something.php”一起工作。感谢您的帮助:-)
.controller("controller",function($scope){
$scope.validateForm = function(){
// Do validation here
// If valid
// Submit form - post data
// Else invalid
// Show message and return
};
});