今回は、ブートストラップテーブルのセルを編集する方法について説明します。実際のケースを見てみましょう。
【おすすめ関連動画: ブートストラップチュートリアル】
ブートストラップテーブルを編集可能にするには、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>
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。
推奨読書:
JSはドロップダウンメニューのログイン登録ポップアップウィンドウを実装します
以上がブートストラップ テーブル編集セル (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。