javascript - ng-click 用 Angular Directive(指令)替换 DOM 元素

标签 javascript jquery angularjs

所以我想知道是否有可能在一个 span 上有一个 ng-click 语句,当点击时会用指令(及其模板、绑定(bind)等)替换 span 内容?

例子

 <div class="col-xs-12">
    <span ng-click="edit"> {{ user.name }} - {{ user.lastWin }} </span>
        <button ng-click="removeUser(user.name)" class="btn btn-danger pull-right margin-right-10">Remove User</button>
  </div>

那么编辑将是这样的:

<form name="editUser">
  <input type="text" name="name" ng-model="name" placeholder="Name"/>
  <input type="text" ng-model="lastWin" placeholder="Last Win"/>
</form>
<button ng-click="editUser($index, { name: name, lastWin: lastWin })" class="btn">Save</button>

我必须在我的 Controller 上做什么才能让它正确交换所有内容?

最佳答案

我会使用 ng-if 并在没有额外的 javascript 的情况下完成整个事情

像这样:

<div class="col-xs-12" ng-if="!edit">
    <span ng-click="edit = true"> {{ user.name }} - {{ user.lastWin }} </span>
    <button ng-click="removeUser(user.name)" class="btn btn-danger pull-right margin-right-10">Remove User</button>
</div>
<div ng-if="edit">
    <form name="editUser">
      <input type="text" name="name" ng-model="name" placeholder="Name"/>
      <input type="text" ng-model="lastWin" placeholder="Last Win"/>
    </form>
    <button ng-click="editUser($index, { name: name, lastWin: lastWin })" class="btn">Save</button>
</div>

关于javascript - ng-click 用 Angular Directive(指令)替换 DOM 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22773989/

相关文章:

angularjs - Angular Material - 动态添加选项卡并更改为该选项卡

javascript - AngularJS添加基于下拉值变化的选择

javascript - 声明不带 var 关键字的变量

javascript - 服务器端数据表返回额外页面

php - 使用 php 将数据插入 MySql 后使用 SweetAlert 显示消息

javascript - 为什么无法将信息从 html li 标签传输到 jQuery 函数?

javascript - 将临时变量分配给变量时异步函数的不同行为

javascript - 在js动画中通过鼠标滚轮加速css的skew()

javascript - mint.com javascript 下拉效果

javascript - 在使用 Jasmine 测试 Angular Controller 时预期未定义被定义