javascript - 如何防止稍后更改复选框值?

标签 javascript angularjs

场景:我有一个用例,其中有一个复选框,单击该复选框时将显示一个带有“保存”选项的模式窗口。我关注的是复选框。我需要防止复选框更改其值或取消选中,直到我对模式弹出窗口采取操作之后。不管怎样,我只需要知道如何防止复选框未被选中或值更改,直到稍后。

如何在 JavaScript 中实现这一点?同样,在稍后之前,不会取消选中该复选框,也不会更改任何值 - 即 promise 解决。只需要知道如何处理复选框。

最佳答案

创建一个复选框并使用ng-change事件来处理复选框的取消选中,

<input type="checkbox" ng-model = "checkboxValue" ng-change="handleChange()" />

并将此逻辑添加到您的 Controller 中,

app.controller("MainCtrl", function($scope){
  $scope.checkboxValue = true;

  let canUncheck = false;

  $scope.handleChange = function(){
    if(!canUncheck && !$scope.checkboxValue){
      $scope.checkboxValue = true;
    }
  }


  //later when checkbox can be unchecked
  canUncheck = true;$scope.checkboxValue = false;
})

查看此pen .

关于javascript - 如何防止稍后更改复选框值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44085537/

相关文章:

javascript - 如何在java脚本中检查时间是否小于或等于特定小时

javascript - console.log 最后一行的额外空格打印

javascript - d3 转换堆积条形图

javascript - 微服务可以用JS应用到前端吗?

angularjs - Accordion 内的 ui bootstrap datepicker 不可见

javascript - 子菜单链接不适用于 Bootstrap

javascript - 来自嵌入指令的 Angular 气泡事件

javascript - 绑定(bind)到指令属性

angularjs - 定义 Ui 网格 Angular 中的列位置

javascript - 使用 Javascript 捕获输入并提供输出