bootstrap table单元格新增行并编辑


Posted in Javascript onMay 19, 2017

table单元格新增行并编辑,具体内容如下

需要

bootstrap.min.css —— [ Bootstrap ]

jquery-1.8.2.min.js —— [ Jquery ]

代码

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>新建HTML</title>
<script type="text/javascript" src="jquery-1.8.2.min.js"></script>
<script type="text/javascript"> 
function save_para_table(){ 
  var tableinfo = gettableinfo(); 
  alert(tableinfo); 
} 
//get table infomation 
function gettableinfo(){ 
  var key = ""; 
  var value = ""; 
  var tabledata = ""; 
  var table = $("#para_table"); 
  var tbody = table.children(); 
  var trs = tbody.children(); 
  for(var i=1;i<trs.length;i++){ 
    var tds = trs.eq(i).children(); 
    for(var j=0;j<tds.length;j++){ 
      if(j==0){ 
        if(tds.eq(j).text()==null||tds.eq(j).text()==""){ 
          return null; 
        } 
        key = "key\":\""+tds.eq(j).text(); 
      } 
      if(j==1){ 
        if(tds.eq(j).text()==null||tds.eq(j).text()==""){ 
          return null; 
        } 
        value = "value\":\""+tds.eq(j).text(); 
      } 
    } 
    if(i==trs.length-1){ 
      tabledata += "{\""+key+"\",\""+value+"\"}"; 
    }else{ 
      tabledata += "{\""+key+"\",\""+value+"\"},"; 
    } 
  } 
  tabledata = "["+tabledata+"]"; 
  return tabledata; 
} 

function tdclick(tdobject){ 
  var td=$(tdobject); 
  td.attr("onclick", ""); 
  //1,取出当前td中的文本内容保存起来 
  var text=td.text(); 
  //2,清空td里面的内容 
  td.html(""); //也可以用td.empty(); 
  //3,建立一个文本框,也就是input的元素节点 
  var input=$("<input>"); 
  //4,设置文本框的值是保存起来的文本内容 
  input.attr("value",text); 
  input.bind("blur",function(){ 
    var inputnode=$(this); 
    var inputtext=inputnode.val(); 
    var tdNode=inputnode.parent(); 
    tdNode.html(inputtext); 
    tdNode.click(tdclick); 
    td.attr("onclick", "tdclick(this)"); 
  }); 
  input.keyup(function(event){ 
    var myEvent =event||window.event; 
    var kcode=myEvent.keyCode; 
    if(kcode==13){ 
      var inputnode=$(this); 
      var inputtext=inputnode.val(); 
      var tdNode=inputnode.parent(); 
      tdNode.html(inputtext); 
      tdNode.click(tdclick); 
    } 
  }); 

  //5,将文本框加入到td中 
  td.append(input); 
  var t =input.val(); 
  input.val("").focus().val(t); 
//       input.focus(); 

  //6,清除点击事件 
  td.unbind("click"); 
}
var row=0; 
function addtr(){ 
  if(row<8){
  row++;
  var table = $("#para_table"); 
  var tr= $("<tr>" + 
    "<td style='text-align: center;' onclick='tdclick(this)'>"+"</td>" + 
    "<td style='text-align: center;' onclick='tdclick(this)'>"+"</td>" + 
    "<td align='center' onclick='deletetr(this)'><button type='button' class='btn btn-xs btn-link' >"+"删除"+"</button></td></tr>"); 
  table.append(tr); 
  }else{
    alert("已达到发票能开具的最大商品明细行数");
  }
} 
function deletetr(tdobject){
  row--;
  var td=$(tdobject); 
  td.parents("tr").remove(); 
}


</script>
<link href="bootstrap.min.css" rel="external nofollow" rel="stylesheet" type="text/css">
</head>
<body>
<table class="table table-bordered" id="para_table">
 <thead>
  <tr>
   <th style="text-align:center" width="200">名称</th>
   <th style="text-align:center" width="200">值</th>
   <th style="text-align:center" width="100">操作</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td style="text-align:center; " onclick="tdclick(this)"></td>
   <td style="text-align:center; " onclick="tdclick(this)"></td>
   <td style="text-align:center; " onclick="deletetr(this)"><button type="button" class="btn btn-xs btn-link">删除</button></td>
  </tr>
 </tbody>
</table>

<div id="addtrdiv" style="margin-top:-15px; width: 15%; float: right;">
 <button type="button" class="btn btn-xs btn-link" onclick="addtr()">添加</button>
</div>
</body>
</html>

效果图:

bootstrap table单元格新增行并编辑

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery 常用方法经典总结
Jan 28 Javascript
从jQuery.camelCase()学习string.replace() 函数学习
Sep 13 Javascript
基于jquery封装的一个js分页
Nov 15 Javascript
JQuery实现带排序功能的权限选择实例
May 18 Javascript
微信小程序 绘图之饼图实现
Oct 24 Javascript
Vue.js第四天学习笔记(组件)
Dec 02 Javascript
AngularJS入门教程之Helloworld示例
Dec 25 Javascript
JS与jQuery实现ListBox上移,下移,左移,右移操作功能示例
May 31 jQuery
详解vuex状态管理模式
Nov 01 Javascript
JS实现json数组排序操作实例分析
Oct 28 Javascript
Javascript基于OOP实实现探测器功能代码实例
Aug 26 Javascript
解决nuxt 自定义全局方法,全局属性,全局变量的问题
Nov 05 Javascript
layui弹出层效果实现代码
May 19 #Javascript
layui分页效果实现代码
May 19 #Javascript
layui前段框架日期控件使用方法详解
May 19 #Javascript
详解Node.js开发中的express-session
May 19 #Javascript
前端页面文件拖拽上传模块js代码示例
May 19 #Javascript
jQuery操作之效果详解
May 19 #jQuery
AngularJS中的promise用法分析
May 19 #Javascript
You might like
Smarty的配置与高级缓存技术分享
2012/06/05 PHP
支付宝服务窗API接口开发php版本
2016/07/20 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
2017/09/22 PHP
PHP单元测试框架PHPUnit用法详解
2019/01/23 PHP
javascript instanceof 内部机制探析
2010/10/15 Javascript
使用jQuery同时控制四张图片的伸缩实现代码
2013/04/19 Javascript
用JavaScript计算在UTF-8下存储字符串占用字节数
2013/08/08 Javascript
JavaScript中使用typeof运算符需要注意的几个坑
2014/11/08 Javascript
jquery实现textarea 高度自适应
2015/03/11 Javascript
JS 实现Base64编码与解码实例详解
2016/11/07 Javascript
Vue.js实现表格动态增加删除的方法(附源码下载)
2017/01/20 Javascript
vue项目中应用ueditor自定义上传按钮功能
2018/04/27 Javascript
vue+elementUI实现表单和图片上传及验证功能示例
2019/05/14 Javascript
layui动态表头的实现代码
2019/08/22 Javascript
微信小程序点击item使之滚动到屏幕中间位置
2020/03/25 Javascript
jQuery实现手风琴特效
2021/01/11 jQuery
Python使用MD5加密算法对字符串进行加密操作示例
2018/03/30 Python
python简单贪吃蛇开发
2019/01/28 Python
PyQt5根据控件Id获取控件对象的方法
2019/06/25 Python
如何解决tensorflow恢复模型的特定值时出错
2020/02/06 Python
python递归函数求n的阶乘,优缺点及递归次数设置方式
2020/04/02 Python
Python virtualenv虚拟环境实现过程解析
2020/04/18 Python
Python基于wordcloud及jieba实现中国地图词云图
2020/06/09 Python
JAVA及PYTHON质数计算代码对比解析
2020/06/10 Python
HTML5+CSS3绘制锯齿状的矩形
2016/03/01 HTML / CSS
请介绍一下WSDL的文档结构
2013/03/17 面试题
汽车运用工程毕业生自荐信
2013/10/29 职场文书
通信工程毕业生求职信
2013/11/16 职场文书
业务员岗位职责范本
2013/12/15 职场文书
就业意向协议书
2015/01/29 职场文书
认识实习感想
2015/08/10 职场文书
2015年国庆节寄语
2015/08/17 职场文书
2016党校培训心得体会
2016/01/07 职场文书
golang json数组拼接的实例
2021/04/28 Golang
Golang 编译成DLL文件的操作
2021/05/06 Golang
vue二维数组循环嵌套方式 循环数组、循环嵌套数组
2022/04/24 Vue.js