我是AngularJS的新手。我需要验证fields
,因此当用户输入empty
信息时,会显示错误,但数据仍然无法保存到DB
。如果信息有效,那么必须将其保存到我的DB
messages
工作正常,但如果用户离开empty
字段并点击submit
,内容仍会保存。
以下是我对controller
的确认:
app.controller('addContactCtrl', ['$scope', '$http', function($scope, $http)
{
$scope.newContact = function(contact) {
$scope.queryMsg= ""; //displays if sent or not in html form
//post is used to create
$http.post('model/addContact.php', contact).success(function(data) {
if (data && contact != "")
{//row inserted into table
$scope.queryMsg = "Query has been sent successfully.";
$scope.contact = "";
}
else
{
$scope.queryMsg = "Fields cannot be left empty.";
}
})
};
}
]);
感谢您的帮助!
答案 0 :(得分:0)
您可能需要在发布数据之前对其进行验证。你在发帖后做验证。请试试这个
app.controller('addContactCtrl', ['$scope', '$http', function($scope, $http)
{
$scope.newContact = function(contact) {
$scope.queryMsg= ""; //displays if sent or not in html form
//post is used to create
if (contact != "") {
$http.post('model/addContact.php', contact).success(function(data) {
if (data){
$scope.queryMsg = "Query has been sent successfully.";
}
})
} else {
$scope.queryMsg = "Fields cannot be left empty.";
}
};
}
]);
答案 1 :(得分:0)
我会在表单上验证。 在表单有效之前,将禁用提交按钮,您可以使用ng-messages显示消息。
您可以阅读更多相关信息https://scotch.io/tutorials/angularjs-form-validation
<form name="myForm">
<input ng-model="data" required>
<input ng-model="contact" required>
<button ng-disabled myform.$invalid >submit</button>
</form>