javascript - 如何在div中显示ng-init函数的输出?

标签 javascript jquery angularjs

对大多数人来说微不足道

好吧,我有这个 div,我想在 ng-if 设置为 true 并在调用 ng-init 后将一些值绑定(bind)到其中。此时我的 ng-init 正在被调用,但是消息不具约束力。我可能有错误的标签,但你明白我的意思..我希望在我的陈述成立后调用该函数。

    <div ng-repeat="field in model.fieldData">
        <button class="btn-xs" ng-show="!isLocked(field.Id)" ng-click="openField(field)">
            Edit
        </button>

        <div ng-if="isLocked(field.Id)" ng-init="msg = getLockMessage(field.Id)" ng-bind="msg">
        </div>
    </div>

最佳答案

看看这个笨蛋:

plunker

是一个基于您的 html 的小示例,并且有效。对元素父级内部的元素 msg 进行一些更改,因为如果存在很多 fieldData,则相同的变量将被替换。

JS:

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope) {
  $scope.model = {
      fieldData: [{
      Id: 123,
      locked: false,
    }]
  };
  $scope.isLocked = function(element) {
    return element.locked;
  }
  $scope.openField = function(element) {
    element.locked = true;
  }
  $scope.getLockMessage = function(element) {
    return "message from " + element.Id
  }
});

和 html:

  <div ng-repeat="field in model.fieldData">
        <button class="btn-xs" ng-show="!isLocked(field)" ng-click="openField(field)">
            Edit
        </button>

        <div ng-if="isLocked(field)" ng-init="field.msg = getLockMessage(field)" ng-        bind="field.msg">
        </div>
    </div>

关于javascript - 如何在div中显示ng-init函数的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26426863/

相关文章:

javascript - 空插槽如何出现在数组中?

对话框错误中的 JQuery 自动完成

AngularJS - http 拦截器 - 在 token 刷新后重新发送所有请求

javascript - 如何使用 jquery 拆分和连接字符串以获得以下结果

html - 如何以编程方式在 JQM 中创建 ListView

javascript - 如何在选择字段中赋予值?

javascript - 从 JSON 数组生成 HTML 列表

javascript - 根据屏幕尺寸使用jquery删除rel属性?

javascript - JQuery 抖动对错误的影响

javascript - 图像源集到底如何工作?