首页 > 解决方案 > Angular JS 中关于 ng-disabled 的查询

问题描述

<div ng-app="myApp" ng-controller="myCtrl">
<button type="submit" class="btn btn-primary pull-left" ng- 
disabled="captchaError">Submit</button>
</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function ($scope) {
    $scope.captchaError = true;                         
});
</script>

这是我的代码。我将captcha错误设置为true,它禁用了按钮。我的问题是该页面何时运行,如果用户使用inspect该按钮并disabled="disabled"从元素中删除,那么该按钮将开始工作。有没有办法解决prevent这个问题,按钮将无法开始移除disabled="disabled"

标签: javascriptangularjs

解决方案


您可以禁用屏幕上的 f12(大多数用户都在做)键或禁用阻止选项。

如何在 jquery 中为我的所有页面和元素阻止 F12 键盘键?

注意:但您仍然无法控制它,因为用户也可以使用以下方式编辑元素。

  • 如果用户按下 Control+shift+i -> 它会打开开发者面板。

  • chrome右上角->更多工具->开发者工具,打开


所以更好的方法是,你可以使用 ng-if 来限制创建 DOM 元素而不是禁用。

如果表达式的计算结果为 false,则ng-if指令会删除 HTML 元素

<button type="submit" class="btn btn-primary pull-left" ng- 
if="!captchaError">Submit</button>

推荐阅读