Звучит легко и хорошо известно, верно? Я так и думал. Как это сделать в angularJS.Отключить кнопку после формы submit
CSHTML
@using (Html.BeginForm("Order", "Shop", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
{
<div class="container" ng-app="order" ng-controller="orderController">
<button type="submit" ng-disabled="orderButtonClicked" ng-click="orderClicked()" class="btn btn-primary btn-block tf-btn btn-lg">Place Order</button>
</div>
}
AngularJS
angular.module("order", [])
.controller("orderController", ['$scope', '$http','$filter', function ($scope, $http, $filter) {
$scope.orderButtonClicked = false;
$scope.orderClicked = function() {
$scope.orderButtonClicked = true;
}
}]);
Как и многие другие сообщили, а форма не подает при отключении или удалении кнопки. this Ответ сделал то же самое, он утверждает, что он работает, но для меня нет выхода.
Вы можете предположить, что угловая установка настроена правильно, отключение кнопки работает нормально.
В общем, я нашел, что лучший способ сделать это - * скрыть * кнопку отправки при нажатии, а не удалять или отключать ее - независимо от того, какую библиотеку js или серверную бэкэнд я использую. Затем я заменяю его тем, что выглядит как отключенная кнопка отправки или индикатор выполнения или что-то подходящее для этой задачи. – Dave
Спасибо, Дэйв, хотя на самом деле не очень приятно видеть, что кнопка уходит, когда нажимаешь на нее, она работает с 'ng-hide'. – CularBytes
Ну, ему не нужно уходить, по крайней мере, не так, как знает пользователь - см. Мой ответ. – Dave