gpt4 book ai didi

javascript - 单击一次后如何禁用提交按钮以防止在 Angularjs 中多次提交?

转载 作者:IT王子 更新时间:2023-10-29 03:19:58 24 4
gpt4 key购买 nike

我浏览了整个网络,包括几个堆栈溢出示例,以找到问题的解决方案。具体来说,我试过这个:

var disableButton = function() {
document.getElementById('<%= btnSubmit.ClientID %>').disabled = true;
}

$scope.isDisabled = false;
var someFunc = function() {
$scope.isDisabled = true;
}
<button OnClientClick="disableButton()" type="submit">Submit</button>
<button ng-disabled="isDisabled" type="submit">Submit</button>

都没有像宣传的那样工作。还有其他建议吗?请仅提供 Angular 建议。谢谢。

最佳答案

您非常接近答案。您唯一错过的是使用 ng-click 调用按钮上的 someFunc() 函数。

另一个问题是,在您的 Controller 中,函数应该是 $scope.someFunc() 而不是 var someFunc()

工作示例:你的 index.html 应该是这样的:

<html>

<head>
<script data-require="angular.js@1.3.15" data-semver="1.3.15" src="https://code.angularjs.org/1.3.15/angular.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
<script src="application.js"></script>
</head>

<body ng-app="demo" ng-controller="demoController">
<button type="submit" ng-disabled="isDisabled" ng-click="disableButton()"> Click me to disable myself</button>
</body>

</html>

你的 Controller application.js 应该是这样的:

angular.module('demo', [])
.controller('demoController',function($scope){

$scope.isDisabled = false;

$scope.disableButton = function() {
$scope.isDisabled = true;
}

});

关于javascript - 单击一次后如何禁用提交按钮以防止在 Angularjs 中多次提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29984581/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com