javascript - 如何在动态html中添加逻辑否定(!)运算符

标签 javascript html angularjs

如何在动态html内容中添加否定运算符

'<div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 form-group1" ng-class="{\'has-error\': (form.Year.$error.required && form.Year.$touched), \'has-success\':  !(form.Year.$error.required)}"><select ng-model="year" class="form-control" ' + strAttrs[2] + ' ng-options="year.value as year.name disable when year.disabled for year in years" class="form-control" ng-required="true" name="Year"></select></div>'

在上面的代码中,我给出了这样的否定运算符,

!(form.Year.$error.required)

但是每次它取null时,我想我没有在动态html内容中添加正确的逻辑运算符。

任何帮助都是值得赞赏的,提前致谢。 :)

最佳答案

以下内容对我有用:

<div ng-class="{'ok': (success && !error), 'not-ok': (!success || error)}">Result Box</div>

请注意,我不需要转义单引号。当我尝试转义单引号时,它不起作用。

我还注意到您的选择中出现了一些无效引用:

class="form-control" ' + strAttrs[2] + ' ng-options="year.value as year.name disable when year.disabled for year in years"

您还定义了该类两次,但这应该会默默地失败。

这是一个很小的工作示例:

<!doctype html>
<html ng-app="myApp">
<head>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.js"></script>
  <script>
  angular.module('myApp', [])
    .controller('MyController', ['$scope', function ($scope) {
        $scope.success = true;
        $scope.error = false;
    }]);
  </script>
  <style>
    .not-ok { border: 1px solid red; }
    .ok { background-color: green; }
  </style>
</head>
<body ng-controller="MyController">
  <input type="checkbox" ng-model="success">Success {{success}}
  <br/>
  <input type="checkbox" ng-model="error">Error {{error}}
  <div ng-class="{'ok': (success && !error), 'not-ok': (!success || error)}">Result Box</div>
</body>
</html>

关于javascript - 如何在动态html中添加逻辑否定(!)运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41386011/

相关文章:

javascript - 随机化 Dribbble API 调用结果

javascript - 阻止下拉菜单重定向到主页

css - Div 彼此相邻或彼此之间

javascript - 当用户滚动网页时滚动 CSS 背景 - 视差?

javascript - Angular Material md-contact-chips 回调问题

php - 将屏幕宽度获取到 javascript 变量中并通过 ajax 将其发送到 php 页面以避免页面加载

javascript - 如何在侧面菜单中使用 TouchableOpacity onPress?

jquery - document.getElementsByClassName ("").innerHTML - 不工作

javascript - AngularJS 'Cannot read property ' 然后'未定义'

javascript - AngularJS 日期过滤器显示错误的日期