This time I will bring you bootstrap table editing cells. What are the precautions for bootstrap table editing cells? The following is a practical case, let’s take a look.
[Related video recommendation: Bootstrap tutorial]
To make bootstrap-table editable, you need to use the x-editable plug-in.
First import the necessary css and js files on the page
<!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>
I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the php Chinese website!
Recommended reading:
JS implements simple four arithmetic operations
JS implements drop-down menu login registration pop-up window
The above is the detailed content of bootstrap table editing cell (code example). For more information, please follow other related articles on the PHP Chinese website!