angularjs实现table增加tr的方法


Posted in Javascript onFebruary 27, 2018

需求:

angularjs实现table增加tr的方法

上面是一个table,运用了

<tr ng-repeat="rule in formData.ruleList track by $index">

循环显示。现在的一个需求是:需要在每行添加一个字段,不过不能在同一行显示,需要在下一行显示。我首先想到了直接加个,不过没有办法换行。在下面再加个也不行。只能依赖强大的angulajs,自定义指令。下面我们就开始。

1 自定义指令

.directive(
   'kbnTableRow',
   function($compile) {
    return {
    restrict : 'A',
    link : function(scope, element) {
    element.after('<tr>');
   function expressDescHtml() {
   var detailHtml = '<td></td><td colspan="5">'
   + '<div ng-show="rule.type!==1">'
    + '<div class="col-xs-9 row">'
 + ' <input type="text" class="form-control" ng-model="rule.exprDesc"readonly ">'
+ '</div>'
+'</div>' + '</td>';
return detailHtml;
    }
  },
 templateUrl : 'libs/kbnTable/table_row/rule.html'
      };
     });

2 rule.html是原来的里的内容

<td class="form-control-static">
 <div class="form-control-static">{{$index+1}}</div>
</td>
<td>
 <div class="form-control-static" ng-show="rule.type===1"
  style="text-align: -webkit-left;">   {{rule.rightVar.desc}}</div>
 <div ng-show="rule.type!==1">
  <div class="col-xs-9 row">
   <input type="text" class="form-control" ng-model="rule.rightVar.desc"
    readonly title="{{rule.rightVar.desc}}">
  </div>
  <div class="col-xs-3 ">
   <button class="btn btn-warning"
    ng-click="showRightVar(rule,'rightVar')">设置</button>
  </div>
 </div>
</td>
<td class="form-control-static" ng-show="formData.execType == 't02'">
 <div class="form-control-static" style="padding-top: 0;">
  <input type="text" class="form-control" ng-model="rule.score"
   title="{{rule.score}}" />
 </div>
</td>
<td class="td-button" style="padding-left: 0; padding-right: 1px;">
 <button class="btn btn-danger" ng-click="del(rule)">删除</button> <input
 type="hidden" ng-model="rule.enable" />
</td>
<td class="td-button" style="padding: 8px 0;">
 <button class="btn btn-danger" ng-click="disabledRule(rule, $event)">
  <span ng-if="rule.enable == 0">启用</span> <span
   ng-if="rule.enable == 1">禁用</span>
 </button>
</td>

不需要改变,原来是什么,这里就写什么。

3 初始页面里的tr循环部分,用我们新建的指令改写:

<div class="row">
   <div class="col-xs-12 row">
    <h4 class="col-xs-12">
     <b>表达式设置</b>
    </h4>
   </div>
   <div class="col-xs-12">
    <div class="row">
     <div class="col-xs-10">
      <table class="table text-center">
       <tr>
        <th ng-click="toggleAll()">
          <i class="fa discover-table-open-icon"
          ng-class="{ 'fa-caret-down': formData.on, 'fa-caret-right': !formData.on }"> 
          </i>
        </th>
        <th width="45px">序号</th>
        <th>左变量</th>
        <th>操作符</th>
        <th>右变量</th>
        <th width="75px" ng-show="formData.execType == 't02'">分值</th>
        <th colspan="2">操作</th>
        <th></th>
       </tr>
       <tbody>
        <tr ng-repeat="rule in formData.ruleList track by $index"
         kbn-table-row class="discover-table-row"></tr>
       </tbody>
      </table>
     </div>
     <div class="col-xs-1">
      <button class="btn btn-info" ng-click="addRule()">新增</button>
     </div>
    </div>
   </div>

这样就可以完成我们的初始要求,不过可以在上面稍微改动下,会实现更棒的功能,下面一行可以自动收缩:

angularjs实现table增加tr的方法

以上这篇angularjs实现table增加tr的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery text,radio,checkbox,select操作实现代码
Jul 09 Javascript
ExtJS Store的数据访问与更新问题
Apr 28 Javascript
JavaScript使用indexOf获得子字符串在字符串中位置的方法
Apr 06 Javascript
js实现将json数组显示前台table中
Jan 10 Javascript
Vue2.0权限树组件实现代码
Aug 29 Javascript
js实现随机点名系统(实例讲解)
Oct 18 Javascript
jquery实现企业定位式导航效果
Jan 01 jQuery
vue单个组件实现无限层级多选菜单功能
Apr 10 Javascript
vue2 设置router-view默认路径的实例
Sep 20 Javascript
在Vue.js中使用TypeScript的方法
Mar 19 Javascript
微信小程序向Java后台传输参数的方法实现
Dec 10 Javascript
原生JavaScript实现购物车
Jan 10 Javascript
关于redux-saga中take使用方法详解
Feb 27 #Javascript
浅析Visual Studio Code断点调试Vue
Feb 27 #Javascript
angularJs 表格添加删除修改查询方法
Feb 27 #Javascript
ExtJs整合Echarts的示例代码
Feb 27 #Javascript
angularJS实现动态添加,删除div方法
Feb 27 #Javascript
浅谈React中的元素、组件、实例和节点
Feb 27 #Javascript
AngularJS动态添加数据并删除的实例
Feb 27 #Javascript
You might like
PHP setcookie指定domain参数后,在IE下设置cookie失效的解决方法
2011/09/09 PHP
CI框架验证码CAPTCHA辅助函数用法实例
2014/11/05 PHP
给PHP开发者的编程指南 第一部分降低复杂程度
2016/01/18 PHP
浅析Yii2集成富文本编辑器redactor实例教程
2016/04/25 PHP
php实现文件预览功能
2017/05/23 PHP
PHP实现简易计算器功能
2020/08/28 PHP
十分钟打造AutoComplete自动完成效果代码
2009/12/26 Javascript
Javascript弹出窗口的各种方法总结
2013/11/11 Javascript
javascript闭包传参和事件的循环绑定示例探讨
2014/04/17 Javascript
三种方式获取XMLHttpRequest对象
2014/04/21 Javascript
jquery让返回的内容显示在特定div里(代码少而精悍)
2014/06/23 Javascript
跟我学习javascript的执行上下文
2015/11/18 Javascript
JavaScript_ECMA5数组新特性详解
2016/06/12 Javascript
Nodejs进阶:核心模块net入门学习与实例讲解
2016/11/21 NodeJs
javascript实现文字无缝滚动
2016/12/27 Javascript
js仿QQ邮箱收件人选择与搜索功能
2017/02/10 Javascript
webpack学习笔记之代码分割和按需加载的实例详解
2017/07/20 Javascript
利用Bootstrap Multiselect实现下拉框多选功能
2019/04/08 Javascript
ES6知识点整理之函数对象参数默认值及其解构应用示例
2019/04/17 Javascript
简单的Apache+FastCGI+Django配置指南
2015/07/22 Python
python多维数组切片方法
2018/04/13 Python
python-opencv 将连续图片写成视频格式的方法
2019/01/08 Python
对python使用telnet实现弱密码登录的方法详解
2019/01/26 Python
Python内存管理实例分析
2019/07/10 Python
解决pandas展示数据输出时列名不能对齐的问题
2019/11/18 Python
基于Python生成个性二维码过程详解
2020/03/05 Python
浅谈Python中threading join和setDaemon用法及区别说明
2020/05/02 Python
python 等差数列末项计算方式
2020/05/03 Python
python Timer 类使用介绍
2020/12/28 Python
全面解析HTML5中的标准属性与自定义属性
2016/02/18 HTML / CSS
Solid & Striped官网:美国泳装品牌
2019/06/19 全球购物
大学生入党思想汇报
2014/01/01 职场文书
好的旅游活动方案
2014/08/19 职场文书
Redis实现订单自动过期功能的示例代码
2021/05/08 Redis
SpringBoot详解自定义Stater的应用
2022/07/15 Java/Android
win11电脑关机鼠标灯还亮怎么解决? win11关机后鼠标灯还亮解决方法
2023/01/09 数码科技