bootstrap table实现单击单元格可编辑功能

 更新时间:2017年03月28日 10:13:24   作者:dtable  
这篇文章主要为大家详细介绍了bootstrap table实现单击单元格可编辑功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

要使bootstrap-table实现可编辑,需要配合使用x-editable插件。

先在页面上导入必要的css和js文件

<!DOCTYPE html>
<html lang="zh-CN">
<head>
 <meta charset="utf-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge">
 <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
 <title>bootstrap-table demo</title>
 <!-- Bootstrap 3.3.6 -->
 <link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" rel="external nofollow" >
 <!-- Bootstrap table -->
 <link rel="stylesheet" href="bootstrap-table-1.11.0/bootstrap-table.css" rel="external nofollow" >
 <!-- x-editable -->
 <link rel="stylesheet" href="x-editable/bootstrap3-editable/css/bootstrap-editable.css" rel="external nofollow" >
</head>
<body>
 <div class="container">
 <p></p>
 <table id="table" class="table table-bordered table-hover">
 </table>
 </div>
 <!-- jQuery 2.2.0 -->
 <script src="jQuery-2.2.0.min.js"></script>
 <!-- Bootstrap 3.3.6 -->
 <script src="bootstrap/js/bootstrap.min.js"></script>
 <!-- bootstrap table -->
 <script src="bootstrap-table-1.11.0/bootstrap-table.js"></script>
 <script src="bootstrap-table-1.11.0/extensions/editable/bootstrap-table-editable.js"></script>
 <script src="x-editable/bootstrap3-editable/js/bootstrap-editable.js"></script>
 <script src="bootstrap-table-1.11.0/locale/bootstrap-table-zh-CN.min.js"></script>
 <script type="text/javascript">
 $(function(){
  $('#table').bootstrapTable({
   url:'data.json',
   columns:[
    {field: 'id',title: 'ID'},
    {field: 'name',title: '名称'},
    {field: 'price',title: '单价'},
    {field: 'number',title: '数量', sortable:true,
     cellStyle:function(value,row,index) {
      return {
       "css":{
        padding:'0px'
       }
      };
     },
     formatter:function(value,row,index){
      if(value == undefined) return "0";
      else return value;
     },
     editable:{
      type:'text',
      clear:false,
      validate:function(value){
       if(isNaN(value)) return {newValue:0, msg:'只允许输入数字'};
       else if(value<0) return {newValue:0, msg:'数量不能小于0'};
       else if(value>=1000000) return {newValue:0, msg:'当前最大只能输入999999'};
      },
      display:function(value){
       $(this).text(Number(value));
      },
      //onblur:'ignore',
      showbuttons:false,
      defaultValue:0,
      mode:'inline'
     }
    },
    {field:'amount', title: '总价'}
   ],
   //height:300,
   idField:'id',
   onEditableHidden: function(field, row, $el, reason) { // 当编辑状态被隐藏时触发
    if(reason === 'save') {
     var $td = $el.closest('tr').children();
     $td.eq(-1).html((row.price*row.number).toFixed(2));
     $el.closest('tr').next().find('.editable').editable('show'); //编辑状态向下一行移动
    } else if(reason === 'nochange') {
     $el.closest('tr').next().find('.editable').editable('show');
    }
   }
  });
  $('#table').on( 'click', 'td:has(.editable)', function (e) {
   //e.preventDefault();
   e.stopPropagation(); // 阻止事件的冒泡行为
   $(this).find('.editable').editable('show'); // 打开被点击单元格的编辑状态
  } );

 });
 </script>

</body>
</html>

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

相关文章

  • bootstrap paginator分页插件的两种使用方式实例详解

    bootstrap paginator分页插件的两种使用方式实例详解

    Bootstrap Paginator是一款基于Bootstrap的js分页插件,下面通过本文给大家介绍bootstrap paginator分页插件的两种使用方式,一起看看吧
    2017-11-11
  • 原生javascript+css3编写的3D魔方动画旋扭特效

    原生javascript+css3编写的3D魔方动画旋扭特效

    这篇文章主要介绍了原生javascript+css3编写的3D魔方动画旋扭特效的相关资料,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • 客户端js判断文件类型和文件大小即限制上传大小

    客户端js判断文件类型和文件大小即限制上传大小

    需要脚本在客户端判断大小和文件类型,由于网上没有适合的,就自己写了一个并测试 文件上传大小限制的一个例子,在此与大家分享下
    2013-11-11
  • JavaScript实现轻松创建二维数组的方法小结

    JavaScript实现轻松创建二维数组的方法小结

    这篇文章主要为大家详细介绍了JavaScript中实现轻松创建二维数组的多种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-04-04
  • Echarts图表位置调整的图文教程

    Echarts图表位置调整的图文教程

    实际过程中你会发现图表在div中的位置不太理想,这时怎么去调整呢?下面这篇文章主要给大家介绍了关于Echarts图表位置调整的相关资料,需要的朋友可以参考下
    2022-10-10
  • Bootstrap基本插件学习笔记之Popover提示框(19)

    Bootstrap基本插件学习笔记之Popover提示框(19)

    这篇文章主要为大家详细介绍了Bootstrap基本插件学习笔记之Popover提示框的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • 微信小程序自定义tabBar的踩坑实践记录

    微信小程序自定义tabBar的踩坑实践记录

    这篇文章主要给大家介绍了关于微信小程序自定义tabBar的踩坑实践记录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Mock.js的安装与使用教程(摆脱后端同学的束缚)

    Mock.js的安装与使用教程(摆脱后端同学的束缚)

    Mock功能可以根据接口/数据结构定义、Mock规则配置、Mock 期望配置,自动生成模拟数据,且使用者可以根据需要灵活构造各种结构的接口数据,下面这篇文章主要给大家介绍了关于Mock.js的安装与使用的相关资料,需要的朋友可以参考下
    2022-08-08
  • 解读ES6中class关键字

    解读ES6中class关键字

    这篇文章主要介绍了ES6中class关键字,class是es6引入的最重要特性之一。本文通过实例代码给大家详解,需要的朋友可以参考下
    2017-11-11
  • 使用原生js写的一个简单slider

    使用原生js写的一个简单slider

    这篇文章主要介绍了使用原生js写的一个简单slider,喜欢的朋友可以参考下
    2014-04-04

最新评论