javascript - 如何在 AngularJS 中交换 div 元素的顺序?

标签 javascript jquery html angularjs

如何使用 Angular 的数据绑定(bind)更改 div 元素(包括文本框和下拉列表)的顺序? div 的顺序应相应更改用户登录意味着如果用户类型为 A,则 div A 应位于顶部,如果用户类型为 B,则 div B 应位于顶部,其他 div 元素将位于其下方,依此类推。纯粹用 AngularJS 制作。

这是 HTML:

<div id="A"> A <input type="text" ng-model="Model.AName" disabled /></div>
<div id="B"> B <input type="text" ng-model="Model.BName" disabled /></div>
<div id="C"> C <input type="text" ng-model="Model.CName" disabled /></div>

在 AngularJS Controller 中:

 $scope.orderArr = [{ "A": 2}, { "B": 3 }, { "C": 1 }];

结果将是: C A

最佳答案

要管理订单,您必须创建代表输入的数组。

$scope.inputs = [
  {
    name: 'AName',
    order: 1
  },
  {
    name: 'BName',
    order: 2
  },
  {
    name: 'CName',
    order: 0
  }
];

然后使用循环显示它:

<div id="A" ng-repeat="input in inputs | orderBy: 'order'">
  {{ input.name }}
  <input type="text" disabled ng-model="Model[input.name]">
</div>

通过这种方式,您可以通过更改属性 order 来管理 Controller 中的顺序。 您可以创建条件语句,根据权限设置输入的顺序。

关于javascript - 如何在 AngularJS 中交换 div 元素的顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41439228/

相关文章:

python - 使用网站的Python Youtube音频下载器

jquery - 网站中的 Youtube 设备支持消息

html - 仅使用 CSS 的 100% 高度中心部分

javascript - 使用 JS 和 CSS 更改页面样式?

php - 提交按钮不发送表单数据到 mysql - jquery 问题

javascript - 根据图片制作工作流程图

javascript - Angular - 未选择编辑角色

javascript - 在一个页面的多个输入中实现 jQuery 自动完成

javascript - 如何将可调整大小的 div 宽度读取到变量中 - Angular 4

javascript - 使用 jQuery 选择变量中的内容而不是当前 DOM 中的内容?