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 相关文章推荐
javascript 复杂的嵌套环境中输出单引号和双引号
May 26 Javascript
JS实现一键回顶功能示例代码
Oct 28 Javascript
jquery插件lazyload.js延迟加载图片的使用方法
Feb 19 Javascript
javascript与Python快速排序实例对比
Aug 10 Javascript
详解JavaScript中jQuery和Ajax以及JSONP的联合使用
Aug 13 Javascript
一步步教大家编写酷炫的导航栏js+css实现
Mar 14 Javascript
拥Bootstrap入怀——导航栏篇
May 30 Javascript
jQuery easyui刷新当前tabs的方法
Sep 23 Javascript
vue响应式系统之observe、watcher、dep的源码解析
Apr 09 Javascript
JQuery实现ul中添加LI和删除指定的Li元素功能完整示例
Oct 16 jQuery
layui写后台表格思路和赋值用法详解
Nov 14 Javascript
vue中的双向数据绑定原理与常见操作技巧详解
Mar 16 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
简单易用的计数器(数据库)
2006/10/09 PHP
基于PHP的简单采集数据入库程序
2014/07/30 PHP
PHP中你应该知道的require()文件包含的正确用法
2015/06/12 PHP
thinkPHP3.x常量整理(预定义常量/路径常量/系统常量)
2016/05/20 PHP
Smarty模板引擎缓存机制详解
2016/05/23 PHP
Yii2基于Ajax自动获取表单数据的方法
2016/08/10 PHP
基于PHP的加载类操作以及其他两种魔术方法的应用实例
2017/08/28 PHP
JavaScript异步编程:异步数据收集的具体方法
2013/08/19 Javascript
node.js中的console.log方法使用说明
2014/12/09 Javascript
JavaScript事件委托实例分析
2015/05/26 Javascript
使用DNode实现php和nodejs之间通信的简单实例
2015/07/06 NodeJs
javascript实现数组去重的多种方法
2016/03/14 Javascript
详解Javascript数据类型的转换规则
2016/12/12 Javascript
react性能优化达到最大化的方法 immutable.js使用的必要性
2017/03/09 Javascript
vue2.0使用swiper组件实现轮播的示例代码
2018/03/03 Javascript
js实现鼠标单击Tab表单切换效果
2018/05/16 Javascript
如何解决js函数防抖、节流出现的问题
2019/06/17 Javascript
angularjs模态框的使用代码实例
2019/12/20 Javascript
关于Node.js中频繁修改代码重启服务器的问题
2020/10/15 Javascript
python中数据爬虫requests库使用方法详解
2018/02/11 Python
python如何压缩新文件到已有ZIP文件
2018/03/14 Python
获取python运行输出的数据并解析存为dataFrame实例
2020/07/07 Python
Pycharm Git 设置方法
2020/09/15 Python
如何用python批量调整视频声音
2020/12/22 Python
python自动打开浏览器下载zip并提取内容写入excel
2021/01/04 Python
html5实现完美兼容各大浏览器的播放器
2014/12/26 HTML / CSS
世界上最大的巴士旅游观光公司:Big Bus Tours
2016/10/20 全球购物
稀有和绝版书籍:Biblio.com
2017/02/02 全球购物
Reebok官方旗舰店:美国知名健身品牌锐步
2019/01/07 全球购物
施惠特软件测试面试题以及笔试题
2015/05/13 面试题
销售行政专员职责
2014/01/03 职场文书
房屋公证委托书
2014/04/03 职场文书
汽车机电维修工求职信
2014/09/30 职场文书
幼儿园个人师德总结
2015/02/06 职场文书
Mysql 如何批量插入数据
2021/04/06 MySQL
python前后端自定义分页器
2022/04/13 Python