gpt4 book ai didi

html - 防止angularjs中的多次点击

转载 作者:搜寻专家 更新时间:2023-10-31 22:12:27 24 4
gpt4 key购买 nike

当我想从我的页面中删除记录时,我需要在删除前显示确认消息。为此,我使用 anchor 和 ng-click='delete()' 来删除此类行。在这里用户可以多次点击 anchor 。这是一个严重的问题,因为确认弹出窗口会多次呈现。我的例子是一个样本。在我的项目中,我遇到了太多这样的问题。我想防止多次点击以扩展 ng-click

最佳答案

如果我们覆盖 ngClick 指令,那么我们可以保护多次点击。

app.config(['$provide', function ($provide) {
$provide.decorator('ngClickDirective',['$delegate','$timeout', function ($delegate,$timeout) {
var original = $delegate[0].compile;
var delay = 500;
$delegate[0].compile = function (element, attrs, transclude) {

var disabled = false;
function onClick(evt) {
if (disabled) {
evt.preventDefault();
evt.stopImmediatePropagation();
} else {
disabled = true;
$timeout(function () { disabled = false; }, delay, false);
}
}
// scope.$on('$destroy', function () { iElement.off('click', onClick); });
element.on('click', onClick);

return original(element, attrs, transclude);
};
return $delegate;
}]);
}]);

关于html - 防止angularjs中的多次点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30137584/

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