- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我创建了无序列表,用户可以在其中单击和编辑(更新)元素。我在隐藏/显示 div 逻辑时遇到了一些问题。当用户单击编辑时我有 showItem div 和 editItem div 它显示 editItem div 并隐藏 showItem 但是当用户单击取消按钮时取消按钮不工作它将隐藏 editItem div 但不会打开它HTML
<ul>
<li data-ng-repeat="value in model.rrnConditionsValues">
<div id="showItem" data-ng-show="!isVisible(value)">
<input class="" type="submit" value="Edit" data-ng-click="toggleVisibility(value)">
<input class="" type="submit" value="Delete" data-ng-click="deleteValue(value)">
<label>{{value.formControllerValueName}}</label>
</div>
<div id="editItem" data-ng-hide="!isVisible(value)">
<input class="" type="submit" value="update" data-ng-click="updateValue(value)">
<input class="" type="submit" value="Cancel" data-ng-click="toggleVisibility(value)">
<input type="text" size="30" data-ng-model="value.formControllerValueName" placeholder="add new here">
</div>
</li>
</ul>
JavaScript
$scope.updateValue = function (value) {
itemsManagementService.updateValue(value);
};
$scope.deleteValue = function (value) {
};
$scope.toggleVisibility = function (model) {
$scope.selected = model;
};
$scope.isVisible = function (model) {
return $scope.selected === model;
};
$scope.hide = function () {
return $scope.isVisible = false;
};
最佳答案
如果当前元素处于编辑模式,您可以添加一个范围变量 editingMode
来存储,并且您还应该在进入编辑模式之前存储该值,以便您可以在取消点击后恢复旧值。
请查看下面或此 jsfiddle 中的演示.
angular.module('demoApp', [])
.controller('mainController', function ($scope) {
$scope.editingMode = [];
$scope.backup = [];
$scope.model = {
rrnConditionsValues: [{
formControllerValueName: "a"
}, {
formControllerValueName: "b"
}, {
formControllerValueName: "c"
}, {
formControllerValueName: "d"
}]
};
$scope.updateValue = function (value, index) {
//itemsManagementService.updateValue(value); // just removed for the demo
$scope.editingMode[index] = false;
};
$scope.cancel = function (index) {
$scope.model.rrnConditionsValues[index].formControllerValueName
= $scope.backup[index];
$scope.editingMode[index] = false;
};
$scope.toggleEdit = function (index) {
// save current model value so we can restore it on cancel
$scope.backup[index] = $scope.model.rrnConditionsValues[index].formControllerValueName;
console.log($scope.backup);
$scope.editingMode[index] = !$scope.editingMode[index];
//$scope.selected = model;
};
$scope.deleteValue = function(index) {
$scope.model.rrnConditionsValues.splice(index,1);
};
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="demoApp" ng-controller="mainController">
<ul>
<li data-ng-repeat="value in model.rrnConditionsValues">
<div id="showItem" data-ng-show="!editingMode[$index]">
<input class="" type="submit" value="Edit" data-ng-click="toggleEdit($index)">
<input class="" type="submit" value="Delete" data-ng-click="deleteValue($index)">
<label>{{value.formControllerValueName}}</label>
</div>
<div id="editItem" data-ng-show="editingMode[$index]">
<input class="" type="submit" value="update" data-ng-click="updateValue(value, $index)">
<input class="" type="submit" value="Cancel" data-ng-click="cancel($index)">
<input type="text" size="30" data-ng-model="value.formControllerValueName" placeholder="add new here">
</div>
</li>
</ul>
</div>
关于javascript - 取消不会在 angularjs 中切换 ngHide,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31840708/
我有一个按钮,当数组 $scope.game.players.players 包含特定值时,我想隐藏该按钮。 button(ng-click="", ng-hide="ImPlaying()") Pl
我有几个基于范围属性显示文本的容器: [ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak{
我试图在加载数据时显示加载图标,然后在数据准备就绪时显示加载图标。问题是几秒钟后,我可以看到加载图标和数据... 这是我的代码 $scope.items[y].content.push({ text:
PO# [[inactive.poNumber]] 我想优化代码如果 getStatusIcon(inactive.currentStatus.code).statusDesc 是(过期,拒绝
我知道问这个问题绝对是愚蠢的,但我很好奇有没有办法做这样的事情: 0'> // shown 最佳答案 要添加@Josh David Miller 的答案,以下值在 Angular
当我登录我的应用程序时,我希望登录和注册按钮从导航中消失,所以如果登录成功并且从服务器收到 token ,我将使用 ng-hide 指令,我将其存储在 cookie 中. Nav 是 index.ht
我创建了无序列表,用户可以在其中单击和编辑(更新)元素。我在隐藏/显示 div 逻辑时遇到了一些问题。当用户单击编辑时我有 showItem div 和 editItem div 它显示 editIt
在这个 html 文件的页脚中,我有 3 个按钮。 第一张图片显示了 3 个按钮的排列方式。 第二张图片显示的是页脚中间按钮被注释掉的情况。 第三张图片是当中间按钮上的 ng-hide="true"时
http://plnkr.co/edit/cPyi8lukckyo9EFReI9V?p=preview 删除消失了,但当我点击复选框时却没有,知道我哪里出错了吗? {{task.name}
再次向大家寻求 AngularJS 的帮助。我正在构建一个 SPA,其中我的布局(主)页面分为三个部分,左侧导航栏、中心内容、右侧项目列表栏。当我加载主页时,我的右侧项目列表应该是隐藏的,但在其余屏幕
所以我有一个进度条,单击时将展开全屏,其中包含一些内容。我正在尝试 Angular 东西,但我似乎无法使关闭按钮切换功能正常工作。我在父级上有一个 ngClick,首先显示关闭按钮,效果很好!但是当我
我不明白为什么 ngShow 和 ngHide 指令不起作用。这是问题的简化版本。 content here content here 在 Controller 中 $scope.showConten
我用 material 在 angularjs 中创建了标签。我从一开始就隐藏了它的标签内容。如何使用某些动画在选项卡单击上显示内容。我的一些代码
我有一个带有 的 AngularJS 1.2.2 Web 应用程序我根据一些 $scope 显示/隐藏属性(property)。使用 ngAnimate模块,我动画显示和隐藏 . 我还有一门课我想
我有一些 angularjs ngHide 和 ngShow 代码。它们在 Chrome 中工作正常,但在 IE 中表现相反。代码如下: Section 1
Daño Global = 3" >
大家好! 我正在尝试让我的 Angular 5 应用程序隐藏元素(或显示隐藏元素)。然而,这似乎行不通。 我已经尝试过 ngHide、ng-hide、ngShow、ng-show、[hidden] 方
我是一个 DOM 元素(绑定(bind)到一个表)。我是基于 ngShow 的选项卡控件的下游子控件。我住在第二个选项卡上。当页面渲染时,我存在,但我还没有真正可见。 当我通过我的非直接父级变得可见时
所以我有两个独占的元素: foo bar 我向它们添加了 ngShow 和 ngHide: foo bar 但是现在当这些渲染时,它们都显示在一瞬间。 我怎样才能让它们同时显示/隐藏? 最佳答案 使用
我有一些元素希望在特定条件下可见。 在 AngularJS 中我会写 stuff 我如何在 Angular 2+ 中执行此操作? 最佳答案 hidden 属性可用于此 [hidden]="!myVar
我是一名优秀的程序员,十分优秀!