在编辑表单时获取xeditable复选框的当前值

时间:2014-06-26 16:23:54

标签: javascript angularjs x-editable

如果选中了另一个复选框,我想要显示一个复选框,但只在编辑表单时才显示此复选框。由于模型在编辑时没有得到更新,因此根据模型的值,我不能ng-show第二个复选框。

tl; dr:在编辑表单中获取xeditable复选框的值

这是我目前正在使用的HTML:

    <div class="col-xs-1 pad-xs text-center">
      <span editable-checkbox="field.left">
        <span class="fa fa-check" ng-if="field.left"></span>
      </span>
    </div>
    <div class="col-xs-1 pad-xs text-center">
      <span editable-checkbox="field.right" ng-show="~~here~~">
        <span class="fa fa-check" ng-if="field.right"></span>
      </span>
    </div>

我可以将e-ng-change添加到第一个复选框以确定更改,但我无法正确检索该值。

1 个答案:

答案 0 :(得分:13)

哦,我想我已经明白了。

如果您将this传递给某个函数,则$data参数将反映该复选框的当前值。

<div class="col-xs-1 pad-xs text-center">
  <span editable-checkbox="field.left" e-ng-change="changeField(this, field)">
    <span class="fa fa-check" ng-if="field.left"></span>
  </span>
</div>
<div class="col-xs-1 pad-xs text-center">
  <span editable-checkbox="field.right" e-ng-show="field._left">
    <span class="fa fa-check" ng-if="field.right"></span>
  </span>
</div>

在我的changeField函数中,我正在使用此

  $scope.changeField = function(self, field) {
    field._left = self.$data;
  };
相关问题