【问题标题】:Display xeditable editable form inside popup在弹出窗口中显示可编辑的可编辑表单
【发布时间】:2021-10-08 15:57:43
【问题描述】:

需要将可编辑表单包装在引导程序 uib-popover-template 中。

已经尝试过可编辑的 ui-bootstrap 弹出框方法,但它没有按预期工作。

Plunker 1 --> https://plnkr.co/edit/vXeVoFYVU2IU08CF 角度引导方法 - 无法显示/隐藏表单

Plunker 2 --> https://plnkr.co/edit/upUFeEeQbxs8VfF5?preview x-editable 方法 - 无法将其包装在弹出框内

<div class="ui-popover-wrapper">
  <a href="#" editable-text="user.name" 
    ng-click="editableForm.$show()">{{user.name || 'empty' }}</a>
</div>

   <form editable-form name="editableForm" onaftersave="saveUser()" ng-show="editableForm.$visible">
    <div>
      <span class="title">DDown1: </span>
      <span editable-select="user.status" e-name="status" e-ng-options="s.value as s.text for s in statuses">
        {{ (statuses | filter:{value: user.status})[0].text || 'Not set' }}
      </span>
    </div>  

    
    <div>
      <!-- editable username (text with validation) -->
      <span class="title">DropDown Date: </span>
      <span editable-date="user.date" onbeforesave="checkDate($data)"
      >{{ (user.date | date: "yyyy-MM-dd") || 'empty' }}</span>
    </div> 
    
    <div>
      <!-- buttons to submit / cancel form -->
      <span ng-show="editableForm.$visible">
        <button type="submit" class="btn btn-primary" ng-disabled="editableForm.$waiting">
          Save
        </button>
        <button type="button" class="btn btn-default" ng-disabled="editableForm.$waiting" ng-click="editableForm.$cancel()">
          Cancel
        </button>
      </span>
    </div>
  </form>  

【问题讨论】:

  • 第一个 Plunker 不显示表单,因为它嵌套在 &lt;script&gt; 标记中。在声明表单之前关闭该标签。

标签: javascript angularjs angular-ui-bootstrap x-editable angular-xeditable


【解决方案1】:

我已经编辑了你的第一个 plunkr:https://plnkr.co/edit/QNKoOd7rZzAiIRJf

您需要将模板的 id 作为字符串传递给 bootstrap popover 指令:

  uib-popover-template="'myPopoverTemplate.html'"

我也从你的代码中删除了这个:

ng-show="editableForm.$visible"

我假设您想在点击时显示弹出框。

【讨论】:

  • 表单正在弹出框内显示,但仍不可编辑。我在这里错过了什么?
  • 我已经通过删除
    元素在 plunkr 中修复了这个问题。在表单中使用 x 可编辑字段存在问题。查看此问题:github.com/vitalets/angular-xeditable/issues/6。如果您想对这些字段进行 angularjs 表单验证,则需要找到一种解决方法。我没有太多空闲时间去寻找一个。对我来说,图书馆不支持这一点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-05
  • 2013-07-21
  • 1970-01-01
  • 2016-04-07
  • 1970-01-01
相关资源
最近更新 更多