Я знаю, что есть несколько старых вопросов со связанными темами, но я не нашел удовлетворительного ответа на этот вопрос, плюс эти ответы, похоже, для более старых версий Angularjs.AngularJS 1.4.1 ng-submit не срабатывает после сброса формы
Моя проблема - это форма с угловым подтверждением и ng-submit не срабатывает после того, как она была отправлена один раз, даже после сброса данных модели, и форма была нетронутой и установлена в нетронутую.
После первого представления форма сбрасывается визуально, как ожидалось, и корректно проверяется, если используется второй раз, включая активацию кнопки отправки при прохождении проверки. Сравнение кода формы перед любыми представлениями и после сброса создает идентичный HTML. Нажатие кнопки submit вызывает предварительный загрузчик, как было разработано. Однако нг подать действие не будет срабатывать ...
$scope.resetMediaForm = function() {
$scope.uploadMedia = {};
$scope.uploadMedia.from = ''
$scope.uploadMedia.message = ''
$scope.uploadMedia.file = null;
$scope.uploadMedia.fileType = '';
$scope.uploadMedia.fileName = '';
$scope.uploadMedia.done = false;
$scope.uploadMedia.error = '';
if ($scope.mediaForm) {
$scope.mediaForm.$setUntouched();
$scope.mediaForm.$setPristine();
//$('form[name="'+$scope.mediaForm.$name+'"]')[0].reset();
}
};
$scope.resetMediaForm();
$scope.uploadMedia.submit = function() {
var data = {
from: $scope.uploadMedia.from,
message: $scope.uploadMedia.message,
file: $scope.uploadMedia.file,
fileType: $scope.uploadMedia.fileType,
fileName: $scope.uploadMedia.fileName
};
plotRemoteAPI.postMedia(data, function (data, status) {
if (status >= 200 && status < 300) {
if (data.success === true) {
$scope.resetMediaForm();
} else {
$scope.uploadMedia.error = data.error;
}
} else {
$scope.uploadMedia.error = status;
}
}, function (data, status) {
$scope.uploadMedia.error = data.error;
});
};
Plunkr: http://embed.plnkr.co/zO3lEqa7sfqYDvjHRnqa/preview
Вы можете попытаться изменить тип кнопки отправить в 'button' и измените' нг-submit' в 'нг-click' вместо этого? – Icycool
Эй, lcycool - Спасибо. Это все еще не работает во втором представлении, и, конечно, выражения, зависящие от $ представленных, больше не работают, например, показывают предварительный загрузчик и т. Д. – izk
@izk Не могли бы вы создать plunkr того же самого? –