examples.html 46 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>Examples &middot; Bootstrap Table</title>
  6. <meta name="author" content="zhixin">
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  8. <link rel="stylesheet" href="assets/bootstrap/css/bootstrap.min.css">
  9. <!--<link rel="stylesheet" href="assets/bootstrap2.3/css/bootstrap.min.css">-->
  10. <!--<link rel="stylesheet" href="assets/bootstrap2.3/css/bootstrap-responsive.min.css">-->
  11. <link rel="stylesheet" href="../src/bootstrap-table.css">
  12. <link rel="stylesheet" href="assets/highlightjs/default.min.css">
  13. <link rel="stylesheet" href="docs.css">
  14. <!--<link rel="stylesheet" href="//wenzhixin.net.cn/css/fork.css">-->
  15. <!--[if lt IE 9]>
  16. <script src="//wenzhixin.net.cn/js/html5shiv.js"></script>
  17. <script src="//wenzhixin.net.cn/js/respond.min.js"></script>
  18. <![endif]-->
  19. <script src="assets/jquery.min.js"></script>
  20. <script src="assets/bootstrap/js/bootstrap.min.js"></script>
  21. <!--<script src="assets/bootstrap2.3/js/bootstrap.min.js"></script>-->
  22. <script src="../docs/examples.js"></script>
  23. </head>
  24. <body>
  25. <a class="sr-only" href="#content">Skip to main content</a>
  26. <header class="navbar navbar-inverse navbar-fixed-top bs-docs-nav">
  27. <div class="container">
  28. <div class="navbar-header">
  29. <button class="navbar-toggle" type="button" data-toggle="collapse"
  30. data-target=".bs-navbar-collapse">
  31. <span class="sr-only">Toggle navigation</span>
  32. <span class="icon-bar"></span>
  33. <span class="icon-bar"></span>
  34. <span class="icon-bar"></span>
  35. </button>
  36. <a class="navbar-brand" href="index.html">
  37. Bootstrap Table
  38. </a>
  39. </div>
  40. <nav class="collapse navbar-collapse bs-navbar-collapse" role="navigation">
  41. <ul class="nav navbar-nav">
  42. <li>
  43. <a href="getting-started.html">Getting started</a>
  44. </li>
  45. <li>
  46. <a href="documentation.html">Documentation</a>
  47. </li>
  48. <li class="active">
  49. <a href="examples.html">Examples</a>
  50. </li>
  51. </ul>
  52. <ul class="nav navbar-nav navbar-right">
  53. <!-- GitHub buttons: see http://ghbtns.com -->
  54. <li><iframe class="navbar-text" src="http://ghbtns.com/github-btn.html?user=wenzhixin&repo=bootstrap-table&type=watch&count=true" allowtransparency="true" frameborder="0" scrolling="0" width="110" height="20"></iframe></li>
  55. <li><iframe class="navbar-text" src="http://ghbtns.com/github-btn.html?user=wenzhixin&repo=bootstrap-table&type=fork&count=true" allowtransparency="true" frameborder="0" scrolling="0" width="95" height="20"></iframe></li>
  56. <li><iframe class="navbar-text" src="http://ghbtns.com/github-btn.html?user=wenzhixin&type=follow&count=true" allowtransparency="true" frameborder="0" scrolling="0" width="165" height="20"></iframe></li>
  57. </ul>
  58. </nav>
  59. </div>
  60. </header>
  61. <div class="bs-header" id="content">
  62. <div class="container">
  63. <h1>Examples</h1>
  64. <p>The examples of bootstrap table.</p>
  65. </div>
  66. </div>
  67. <div class="container">
  68. <div class="row">
  69. <div class="col-md-3 span3">
  70. <div class="bs-sidebar" role="complementary">
  71. <ul class="nav bs-sidenav">
  72. <li><a href="#basic-table">Basic Table</a></li>
  73. <li><a href="#transform-table">Transform Table</a></li>
  74. <li><a href="#classes-table">Table Style</a></li>
  75. <li>
  76. <a href="#sort-table">Sort Table</a>
  77. <ul class="nav">
  78. <li><a href="#basic-sort-table">Basic</a></li>
  79. <li><a href="#custom-sort-table">Custom</a></li>
  80. </ul>
  81. </li>
  82. <li><a href="#format-table">Format Table</a></li>
  83. <li><a href="#hide-header-table">Hide Header Table</a></li>
  84. <li>
  85. <a href="#show-columns-table">Show Columns Table</a>
  86. <ul class="nav">
  87. <li><a href="#basic-show-columns-table">Basic</a></li>
  88. <li><a href="#large-columns-table">Large Columns</a></li>
  89. </ul>
  90. </li>
  91. <li><a href="#card-view">Card View Table</a></li>
  92. <li>
  93. <a href="#table-select">Table select</a>
  94. <ul class="nav">
  95. <li><a href="#radio-table">Radio</a></li>
  96. <li><a href="#checkbox-table">Checkbox</a></li>
  97. <li><a href="#single-checkbox-table">Single Checkbox</a></li>
  98. </ul>
  99. </li>
  100. <li>
  101. <a href="#pagination-table">Pagination Table</a>
  102. <ul class="nav">
  103. <li><a href="#client-side-pagination-table">Client Side</a></li>
  104. <li><a href="#server-side-pagination-table">Server Side</a></li>
  105. </ul>
  106. </li>
  107. <li></li>
  108. <li>
  109. <a href="#table-events">Table Events</a>
  110. <ul class="nav">
  111. <li><a href="#basic-events-table">Basic Events</a></li>
  112. <li><a href="#column-events-table">Column Events</a></li>
  113. </ul>
  114. </li>
  115. <li><a href="#table-methods">Table Methods</a></li>
  116. <li><a href="#via-javascript-table">Via JavaScript</a></li>
  117. </ul>
  118. </div>
  119. </div>
  120. <div class="col-md-9 span9" role="main">
  121. <div class="page-header alert alert-info">
  122. <a class="close" data-dismiss="alert" href="#" aria-hidden="true">&times;</a>
  123. <b>NOTE:</b> Bootstrap Table is licensed under the <a href="https://github.com/wenzhixin/bootstrap-table/blob/master/LICENSE">The MIT License</a>. Completely free, you can arbitrarily use and modify this plugin. If this plugin is useful to you, you can <a href="http://github.com/wenzhixin/bootstrap-table"><b>Star</b></a> this repo, your support is my biggest motive force, thanks.
  124. </div>
  125. <div>
  126. <div>
  127. <h2>Use API:</h2>
  128. <ul>
  129. <li><a href="data1.json">data1.json</a></li>
  130. <li><a href="data2.json">data2.json</a></li>
  131. <li><a href="data3.json">data3.json</a></li>
  132. <li><a href="data4.json">data4.json</a></li>
  133. <li><a href="/examples/bootstrap_table/data?offset=0&limit=10">/examples/bootstrap_table/data?offset=0&limit=10&search=test</a></li>
  134. </ul>
  135. </div>
  136. <div class="page-header">
  137. <h1 id="basic-table">
  138. Basic Table
  139. <button class="btn btn-primary" data-toggle="modal" data-target="#myModal">
  140. Launch modal
  141. </button>
  142. </h1>
  143. </div>
  144. <div class="bs-example">
  145. <table data-toggle="table" data-url="data1.json" data-height="299">
  146. <thead>
  147. <tr>
  148. <th data-field="id">Item ID</th>
  149. <th data-field="name">Item Name</th>
  150. <th data-field="price">Item Price</th>
  151. </tr>
  152. </thead>
  153. </table>
  154. </div>
  155. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  156. <!-- Modal -->
  157. <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  158. <div class="modal-dialog">
  159. <div class="modal-content">
  160. <div class="modal-header">
  161. <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
  162. <h4 class="modal-title" id="myModalLabel">Basic Table</h4>
  163. </div>
  164. <div class="modal-body">
  165. <table data-toggle="table" data-url="data1.json" data-height="299">
  166. <thead>
  167. <tr>
  168. <th data-field="id">Item ID</th>
  169. <th data-field="name">Item Name</th>
  170. <th data-field="price">Item Price</th>
  171. </tr>
  172. </thead>
  173. </table>
  174. </div>
  175. <div class="modal-footer">
  176. <button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
  177. <button type="button" class="btn btn-primary" data-dismiss="modal">OK</button>
  178. </div>
  179. </div>
  180. </div>
  181. </div>
  182. </div>
  183. <div>
  184. <div class="page-header">
  185. <h1 id="transform-table">Transform Table</h1>
  186. </div>
  187. <div class="bs-example">
  188. <div id="transform-buttons" class="btn-group btn-default">
  189. <button class="btn btn-default" id="transform">
  190. <i class="glyphicon glyphicon-transfer"></i> Transform
  191. </button>
  192. <button class="btn btn-default" id="destroy">
  193. <i class="glyphicon glyphicon-trash"></i> Destroy
  194. </button>
  195. </div>
  196. <table id="table-transform" data-toolbar="#transform-buttons">
  197. <thead>
  198. <tr>
  199. <th data-field="id">Item ID</th>
  200. <th data-field="name">Item Name</th>
  201. <th data-field="price">Item Price</th>
  202. </tr>
  203. </thead>
  204. <tbody>
  205. <tr>
  206. <td>1</td>
  207. <td>test1</td>
  208. <td>$1</td>
  209. </tr>
  210. <tr>
  211. <td>2</td>
  212. <td>test2</td>
  213. <td>$2</td>
  214. </tr>
  215. <tr>
  216. <td>3</td>
  217. <td>test3</td>
  218. <td>$3</td>
  219. </tr>
  220. <tr>
  221. <td>4</td>
  222. <td>test4</td>
  223. <td>$4</td>
  224. </tr>
  225. <tr>
  226. <td>5</td>
  227. <td>test5</td>
  228. <td>$5</td>
  229. </tr>
  230. </tbody>
  231. </table>
  232. <script>
  233. $(function() {
  234. var $table = $('#table-transform');
  235. $('#transform').click(function() {
  236. $table.bootstrapTable();
  237. });
  238. $('#destroy').click(function() {
  239. $table.bootstrapTable('destroy');
  240. });
  241. });
  242. </script>
  243. </div>
  244. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  245. </div>
  246. <div>
  247. <div class="page-header">
  248. <h1 id="classes-table">Table Style</h1>
  249. </div>
  250. <div class="bs-example">
  251. <div>
  252. <label><input id="hover" type="checkbox" checked> hover</label>
  253. <label><input id="striped" type="checkbox"> striped</label>
  254. <label><input id="condensed" type="checkbox"> condensed</label>
  255. </div>
  256. <table id="table-style" data-toggle="table" data-url="data1.json" data-height="400" data-row-style="rowStyle">
  257. <thead>
  258. <tr>
  259. <th data-field="id" class="col-md-2">Item ID</th>
  260. <th data-field="name" class="col-md-6">
  261. <i class="glyphicon glyphicon-star"></i>
  262. Item Name
  263. </th>
  264. <th data-field="price" class="col-md-4">
  265. <i class="glyphicon glyphicon-heart"></i>
  266. Item Price
  267. </th>
  268. </tr>
  269. </thead>
  270. </table>
  271. <script>
  272. $(function() {
  273. $('#hover, #striped, #condensed').click(function() {
  274. var classes = 'table';
  275. if ($('#hover').prop('checked')) {
  276. classes += ' table-hover';
  277. }
  278. if ($('#condensed').prop('checked')) {
  279. classes += ' table-condensed';
  280. }
  281. $('#table-style').bootstrapTable('destroy')
  282. .bootstrapTable({
  283. classes: classes,
  284. striped: $('#striped').prop('checked')
  285. });
  286. });
  287. });
  288. function rowStyle(row, index) {
  289. var classes = ['active', 'success', 'info', 'warning', 'danger'];
  290. if (index % 2 === 0 && index / 2 < classes.length) {
  291. return {
  292. classes: classes[index / 2]
  293. };
  294. }
  295. return {};
  296. }
  297. </script>
  298. </div>
  299. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  300. </div>
  301. <div>
  302. <div class="page-header">
  303. <h1 id="sort-table">Sort Table</h1>
  304. </div>
  305. <div class="page-header">
  306. <h2 id="basic-sort-table">Basic</h2>
  307. </div>
  308. <div class="bs-example">
  309. <table data-toggle="table" data-url="data1.json" data-height="299" data-sort-name="name" data-sort-order="desc">
  310. <thead>
  311. <tr>
  312. <th data-field="id" data-align="right" data-sortable="true">Item ID</th>
  313. <th data-field="name" data-align="center" data-sortable="true">Item Name</th>
  314. <th data-field="price" data-sortable="true" data-sortable="true">Item Price</th>
  315. </tr>
  316. </thead>
  317. </table>
  318. </div>
  319. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  320. <div class="page-header">
  321. <h2 id="custom-sort-table">Custom</h2>
  322. </div>
  323. <div class="bs-example">
  324. <table id="table-custom-sort" data-toggle="table" data-url="data1.json" data-height="299" data-sort-name="price" data-sort-order="desc">
  325. <thead>
  326. <tr>
  327. <th data-field="id" data-align="right" data-sortable="true">Item ID</th>
  328. <th data-field="name" data-align="center" data-sortable="true">Item Name</th>
  329. <th data-field="price" data-sortable="true" data-sortable="true" data-sorter="priceSorter">Item Price</th>
  330. </tr>
  331. </thead>
  332. </table>
  333. <script>
  334. function priceSorter(a, b) {
  335. a = +a.substring(1); // remove $
  336. b = +b.substring(1);
  337. if (a > b) return 1;
  338. if (a < b) return -1;
  339. return 0;
  340. }
  341. </script>
  342. </div>
  343. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  344. </div>
  345. <div>
  346. <div class="page-header">
  347. <h1 id="format-table">Format Table</h1>
  348. </div>
  349. <div class="bs-example">
  350. <table id="table-format" data-toggle="table" data-url="data1.json" data-height="299">
  351. <thead>
  352. <tr>
  353. <th data-field="id">Item ID</th>
  354. <th data-field="name" data-formatter="nameFormatter">Item Name</th>
  355. <th data-field="price" data-formatter="priceFormatter">Item Price</th>
  356. </tr>
  357. </thead>
  358. </table>
  359. <script>
  360. function nameFormatter(value, row) {
  361. var icon = row.id % 2 === 0 ? 'glyphicon-star' : 'glyphicon-star-empty'
  362. return '<i class="glyphicon ' + icon + '"></i> ' + value;
  363. }
  364. function priceFormatter(value) {
  365. // 16777215 == ffffff in decimal
  366. var color = '#'+Math.floor(Math.random() * 6777215).toString(16);
  367. return '<div style="color: ' + color + '">' +
  368. '<i class="glyphicon glyphicon-usd"></i>' +
  369. value.substring(1) +
  370. '</div>';
  371. }
  372. </script>
  373. </div>
  374. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  375. </div>
  376. <div>
  377. <div class="page-header">
  378. <h1 id="hide-header-table">Hide Header Table</h1>
  379. </div>
  380. <div class="bs-example">
  381. <table data-toggle="table" data-url="data1.json" data-height="299" data-show-header="false">
  382. <thead>
  383. <tr>
  384. <th data-field="name">Item Name</th>
  385. <th data-field="price">Item Price</th>
  386. </tr>
  387. </thead>
  388. </table>
  389. </div>
  390. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  391. </div>
  392. <div>
  393. <div class="page-header">
  394. <h1 id="show-columns-table">Show Columns Table</h1>
  395. </div>
  396. <div class="page-header">
  397. <h2 id="basic-show-columns-table">Basic</h2>
  398. </div>
  399. <div class="bs-example">
  400. <table data-toggle="table" data-url="data3.json" data-height="299" data-show-columns="true" data-id-field="id">
  401. <thead>
  402. <tr>
  403. <th data-field="state" data-radio="true"></th>
  404. <th data-field="name" data-switchable="false">Name</th>
  405. <th data-field="price">Price</th>
  406. <th data-field="column1">Columns1</th>
  407. <th data-field="column2" data-visible="false">Columns2</th>
  408. <th data-field="column3" data-switchable="false">Columns3</th>
  409. <th data-field="column4" data-visible="false">Columns4</th>
  410. </tr>
  411. </thead>
  412. </table>
  413. </div>
  414. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  415. <div class="page-header">
  416. <h2 id="large-columns-table">Large Columns</h2>
  417. </div>
  418. <div class="bs-example">
  419. <table id="table-large-columns" data-height="400" data-show-columns="true">
  420. <thead>
  421. <tr>
  422. <th data-field="state" data-radio="true"></th>
  423. <th data-field="name" data-switchable="false">Name</th>
  424. <th data-field="price">Price</th>
  425. <th data-field="column1">Columns1</th>
  426. <th data-field="column2" data-visible="false">Columns2</th>
  427. <th data-field="column3" data-switchable="false">Columns3</th>
  428. <th data-field="column4" data-visible="false">Columns4</th>
  429. </tr>
  430. </thead>
  431. </table>
  432. <script>
  433. $(function () {
  434. buildTable($('#table-large-columns'), 50, 50);
  435. });
  436. </script>
  437. </div>
  438. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  439. </div>
  440. <div class="page-header">
  441. <h1 id="card-view">Card View Table</h1>
  442. </div>
  443. <div class="bs-example">
  444. <table data-toggle="table" data-url="data4.json" data-height="299" data-card-view="true" data-response-handler="responseHandler">
  445. <thead>
  446. <tr>
  447. <th data-field="name">Name</th>
  448. <th data-field="license">License</th>
  449. <th data-field="description">Description</th>
  450. <th data-field="url">Url</th>
  451. </tr>
  452. </thead>
  453. </table>
  454. <script>
  455. // client side
  456. function responseHandler(res) {
  457. return res.repos;
  458. }
  459. // server side
  460. /*
  461. function responseHandler(res) {
  462. return {
  463. rows: res.repos;
  464. total: res.repos.length
  465. }
  466. }
  467. */
  468. </script>
  469. </div>
  470. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  471. <div>
  472. <div class="page-header">
  473. <h1 id="table-select">Table Select</h1>
  474. </div>
  475. <div class="page-header">
  476. <h2 id="radio-table">Radio</h2>
  477. </div>
  478. <div class="bs-example">
  479. <table data-toggle="table" data-url="data1.json" data-height="299" data-click-to-select="true" data-select-item-name="radioName">
  480. <thead>
  481. <tr>
  482. <th data-field="state" data-radio="true"></th>
  483. <th data-field="id" data-align="right">Item ID</th>
  484. <th data-field="name" data-align="center">Item Name</th>
  485. <th data-field="price" data-align="left">Item Price</th>
  486. </tr>
  487. </thead>
  488. </table>
  489. </div>
  490. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  491. <div class="page-header">
  492. <h2 id="checkbox-table">Checkbox</h2>
  493. </div>
  494. <div class="bs-example">
  495. <table data-toggle="table" data-url="data1.json" data-height="299" data-click-to-select="true">
  496. <thead>
  497. <tr>
  498. <th data-field="state" data-checkbox="true"></th>
  499. <th data-field="id" data-align="right">Item ID</th>
  500. <th data-field="name" data-align="center">Item Name</th>
  501. <th data-field="price" data-align="">Item Price</th>
  502. </tr>
  503. </thead>
  504. </table>
  505. </div>
  506. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  507. <div class="page-header">
  508. <h2 id="single-checkbox-table">Single Checkbox</h2>
  509. </div>
  510. <div class="bs-example">
  511. <table data-toggle="table" data-url="data1.json" data-height="299" data-click-to-select="true" data-single-select="true">
  512. <thead>
  513. <tr>
  514. <th data-field="state" data-checkbox="true"></th>
  515. <th data-field="id" data-align="right">Item ID</th>
  516. <th data-field="name" data-align="center">Item Name</th>
  517. <th data-field="price" data-align="">Item Price</th>
  518. </tr>
  519. </thead>
  520. </table>
  521. </div>
  522. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  523. </div>
  524. <div>
  525. <div class="page-header">
  526. <h1 id="pagination-table">Pagination Table</h1>
  527. </div>
  528. <div class="page-header">
  529. <h2 id="client-side-pagination-table">Client Side</h2>
  530. </div>
  531. <div class="form-inline">
  532. <label>
  533. I18n:
  534. <select class="form-control" id="i18n">
  535. <option value="en">en</option>
  536. <option value="da-DK">da-DK</option>
  537. <option value="zh-CN">zh-CN</option>
  538. <option value="zh-TW">zh-TW</option>
  539. <option value="pt-BR">pt-BR</option>
  540. </select>
  541. <a href="https://github.com/wenzhixin/bootstrap-table/tree/master/src/locale">Translate your language?</a>
  542. </label>
  543. </div>
  544. <div class="bs-example">
  545. <table id="table-pagination" data-toggle="table" data-url="data2.json" data-height="400" data-pagination="true" data-search="true">
  546. <thead>
  547. <tr>
  548. <th data-field="state" data-checkbox="true"></th>
  549. <th data-field="id" data-align="right" data-sortable="true">Item ID</th>
  550. <th data-field="name" data-align="center" data-sortable="true">Item Name</th>
  551. <th data-field="price" data-sortable="true" data-sorter="priceSorter">Item Price</th>
  552. </tr>
  553. </thead>
  554. </table>
  555. </div>
  556. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  557. <div class="page-header">
  558. <h2 id="server-side-pagination-table">Server Side</h2>
  559. </div>
  560. <div class="bs-example">
  561. <table id="table-pagination"
  562. data-toggle="table"
  563. data-url="/examples/bootstrap_table/data"
  564. data-height="400"
  565. data-side-pagination="server"
  566. data-pagination="true"
  567. data-page-list="[5, 10, 20, 50, 100, 200]"
  568. data-search="true"
  569. data-query-params="queryParams">
  570. <thead>
  571. <tr>
  572. <th data-field="state" data-checkbox="true"></th>
  573. <th data-field="id" data-align="right" data-sortable="true">Item ID</th>
  574. <th data-field="name" data-align="center" data-sortable="true">Item Name</th>
  575. <th data-field="price" data-sortable="true">Item Price</th>
  576. </tr>
  577. </thead>
  578. </table>
  579. <script>
  580. // url: /examples/bootstrap_table/data?offset=0&limit=10&search=test
  581. function queryParams(params) {
  582. return {
  583. limit: params.pageSize,
  584. offset: params.pageSize * (params.pageNumber - 1),
  585. search: params.searchText,
  586. name: params.sortName,
  587. order: params.sortOrder
  588. };
  589. }
  590. // url: /examples/bootstrap_table/data?page=1&number=10&search=test
  591. /*
  592. function queryParams(params) {
  593. return {
  594. page: params.pageNumber,
  595. number: params.pageSize,
  596. search: params.searchText
  597. };
  598. }
  599. */
  600. </script>
  601. </div>
  602. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  603. </div>
  604. <div>
  605. <div class="page-header">
  606. <h1 id="table-events">Table Events</h1>
  607. </div>
  608. <div class="page-header">
  609. <h2 id="basic-events-table">Basic Events</h2>
  610. </div>
  611. <div class="bs-example">
  612. <div class="alert alert-success" id="events-result">
  613. Here is the result of event.
  614. </div>
  615. <table id="events-table" data-url="data1.json" data-height="299" data-search="true">
  616. <thead>
  617. <tr>
  618. <th data-field="state" data-checkbox="true"></th>
  619. <th data-field="id" data-sortable="true">Item ID</th>
  620. <th data-field="name" data-sortable="true">Item Name</th>
  621. <th data-field="price" data-sortable="true">Item Price</th>
  622. </tr>
  623. </thead>
  624. </table>
  625. <script>
  626. $(function() {
  627. var $result = $('#events-result');
  628. $('#events-table').bootstrapTable({
  629. /*
  630. onAll: function(name, args) {
  631. console.log('Event: onAll, data: ', args);
  632. }
  633. onClickRow: function(row) {
  634. $result.text('Event: onClickRow, data: ' + JSON.stringify(row));
  635. },
  636. onDblClickRow: function(row) {
  637. $result.text('Event: onDblClickRow, data: ' + JSON.stringify(row));
  638. },
  639. onSort: function(name, order) {
  640. $result.text('Event: onSort, data: ' + name + ', ' + order);
  641. },
  642. onCheck: function(row) {
  643. $result.text('Event: onCheck, data: ' + JSON.stringify(row));
  644. },
  645. onUncheck: function(row) {
  646. $result.text('Event: onUncheck, data: ' + JSON.stringify(row));
  647. },
  648. onCheckAll: function() {
  649. $result.text('Event: onCheckAll');
  650. },
  651. onUncheckAll: function() {
  652. $result.text('Event: onUncheckAll');
  653. }
  654. */
  655. }).on('all.bs.table', function(e, name, args) {
  656. console.log('Event:', name, ', data:', args);
  657. }).on('click-row.bs.table', function(e, row, $element) {
  658. $result.text('Event: click-row.bs.table, data: ' + JSON.stringify(row));
  659. }).on('dbl-click-row.bs.table', function(e, row, $element) {
  660. $result.text('Event: dbl-click-row.bs.table, data: ' + JSON.stringify(row));
  661. }).on('sort.bs.table', function(e, name, order) {
  662. $result.text('Event: sort.bs.table, data: ' + name + ', ' + order);
  663. }).on('check.bs.table', function(e, row) {
  664. $result.text('Event: check.bs.table, data: ' + JSON.stringify(row));
  665. }).on('uncheck.bs.table', function(e, row) {
  666. $result.text('Event: uncheck.bs.table, data: ' + JSON.stringify(row));
  667. }).on('check-all.bs.table', function(e) {
  668. $result.text('Event: check-all.bs.table');
  669. }).on('uncheck-all.bs.table', function(e) {
  670. $result.text('Event: uncheck-all.bs.table');
  671. });
  672. });
  673. </script>
  674. </div>
  675. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  676. <div class="page-header">
  677. <h2 id="column-events-table">Column Events</h2>
  678. </div>
  679. <div class="bs-example">
  680. <table data-toggle="table" data-url="data1.json" data-height="299" data-search="true">
  681. <thead>
  682. <tr>
  683. <th data-field="state" data-checkbox="true"></th>
  684. <th data-field="id" data-sortable="true">Item ID</th>
  685. <th data-field="name" data-sortable="true">Item Name</th>
  686. <th data-field="price" data-sortable="true">Item Price</th>
  687. <th data-field="operate" data-formatter="operateFormatter" data-events="operateEvents">Item Operate</th>
  688. </tr>
  689. </thead>
  690. </table>
  691. <script>
  692. function operateFormatter(value, row, index) {
  693. return [
  694. '<a class="like" href="javascript:void(0)" title="Like">',
  695. '<i class="glyphicon glyphicon-heart"></i>',
  696. '</a>',
  697. '<a class="edit ml10" href="javascript:void(0)" title="Edit">',
  698. '<i class="glyphicon glyphicon-edit"></i>',
  699. '</a>',
  700. '<a class="remove ml10" href="javascript:void(0)" title="Remove">',
  701. '<i class="glyphicon glyphicon-remove"></i>',
  702. '</a>'
  703. ].join('');
  704. }
  705. window.operateEvents = {
  706. 'click .like': function (e, value, row, index) {
  707. alert('You click like icon, row: ' + JSON.stringify(row));
  708. console.log(value, row, index);
  709. },
  710. 'click .edit': function (e, value, row, index) {
  711. alert('You click edit icon, row: ' + JSON.stringify(row));
  712. console.log(value, row, index);
  713. },
  714. 'click .remove': function (e, value, row, index) {
  715. alert('You click remove icon, row: ' + JSON.stringify(row));
  716. console.log(value, row, index);
  717. }
  718. };
  719. </script>
  720. </div>
  721. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  722. </div>
  723. <div>
  724. <div class="page-header">
  725. <h1 id="table-methods">Table methods</h1>
  726. </div>
  727. <div class="bs-example">
  728. <div class="btn-group">
  729. <button class="btn btn-default" id="get-selections">
  730. Get Selections
  731. </button>
  732. <button class="btn btn-default" id="load-data" data-method="load">
  733. Load Data
  734. </button>
  735. <button class="btn btn-default" id="append-data" data-method="append">
  736. Append Data
  737. </button>
  738. <button class="btn btn-default" id="merge-cells">
  739. Merge Cells
  740. </button>
  741. <button class="btn btn-default" id="check-all" data-method="checkAll">
  742. Check All
  743. </button>
  744. <button class="btn btn-default" id="uncheck-all" data-method="uncheckAll">
  745. Uncheck All
  746. </button>
  747. <button class="btn btn-default" id="show-loading" data-method="showLoading">
  748. Show Loading
  749. </button>
  750. <button class="btn btn-default" id="hide-loading" data-method="hideLoading">
  751. Hide Loading
  752. </button>
  753. <button class="btn btn-default" id="refresh" data-method="refresh">
  754. Refresh
  755. </button>
  756. </div>
  757. <table id="table-methods-table" data-height="299">
  758. <thead>
  759. <tr>
  760. <th data-field="state" data-checkbox="true"></th>
  761. <th data-field="id">Item ID</th>
  762. <th data-field="name">Item Name</th>
  763. <th data-field="price">Item Price</th>
  764. </tr>
  765. </thead>
  766. </table>
  767. <script>
  768. $(function() {
  769. var id = 0,
  770. getRows = function() {
  771. var rows = [];
  772. for (var i = 0; i < 10; i++) {
  773. rows.push({
  774. id: id,
  775. name: 'test' + id,
  776. price: '$' + id
  777. });
  778. id++;
  779. }
  780. return rows;
  781. },
  782. // init table use data
  783. $table = $('#table-methods-table').bootstrapTable({
  784. data: getRows()
  785. });
  786. $('#get-selections').click(function() {
  787. alert('Selected values: ' + JSON.stringify($table.bootstrapTable('getSelections')));
  788. });
  789. $('#load-data, #append-data, #check-all, #uncheck-all, ' +
  790. '#show-loading, #hide-loading, #refresh').click(function() {
  791. $table.bootstrapTable($(this).data('method'), getRows());
  792. });
  793. $('#merge-cells').click(function() {
  794. $table.bootstrapTable('mergeCells', {
  795. index: 1,
  796. field: 'name',
  797. colspan: 2,
  798. rowspan: 3
  799. })
  800. });
  801. });
  802. </script>
  803. </div>
  804. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  805. </div>
  806. <div>
  807. <div class="page-header">
  808. <h1 id="via-javascript-table">Via JavaScript</h1>
  809. </div>
  810. <div class="bs-example">
  811. <table id="table-javascript"></table>
  812. <script>
  813. $(function() {
  814. $('#table-javascript').bootstrapTable({
  815. method: 'get',
  816. url: 'data2.json',
  817. height: 400,
  818. striped: true,
  819. pagination: true,
  820. pageSize: 50,
  821. pageList: [10, 25, 50, 100, 200],
  822. search: true,
  823. showColumns: true,
  824. minimunCountColumns: 2,
  825. columns: [{
  826. field: 'state',
  827. checkbox: true
  828. }, {
  829. field: 'id',
  830. title: 'Item ID',
  831. align: 'right',
  832. valign: 'bottom',
  833. sortable: true
  834. }, {
  835. field: 'name',
  836. title: 'Item Name',
  837. align: 'center',
  838. valign: 'middle',
  839. sortable: true,
  840. formatter: nameFormatter
  841. }, {
  842. field: 'price',
  843. title: 'Item Price',
  844. align: 'left',
  845. valign: 'top',
  846. sortable: true,
  847. formatter: priceFormatter,
  848. sorter: priceSorter
  849. }, {
  850. field: 'operate',
  851. title: 'Item Operate',
  852. align: 'center',
  853. valign: 'middle',
  854. formatter: operateFormatter,
  855. events: operateEvents
  856. }]
  857. });
  858. });
  859. </script>
  860. </div>
  861. <div class="highlight"><pre><code class="language-html"></code></pre></div>
  862. </div>
  863. <hr>
  864. <a href="https://github.com/wenzhixin/bootstrap-table/blob/master/docs/docs.js">More examples via JavaScript</a>
  865. </div>
  866. </div>
  867. </div>
  868. <!--<a href="https://github.com/wenzhixin/bootstrap-table" class="fork_me"></a>-->
  869. <footer class="bs-footer" role="contentinfo">
  870. <div class="container">
  871. <p>Copyright © 2012-2014, Bootstrap Table is licensed under the The MIT License. Coded by wenzhixin. </p>
  872. <ul class="footer-links">
  873. <li>Currently: v1.1.4</li>
  874. <li class="muted">·</li>
  875. <li><a href="http://wenzhixin.net.cn">My website</a></li>
  876. <li class="muted">·</li>
  877. <li><a href="http://repos.wenzhixin.net.cn">My repos</a></li>
  878. <li class="muted">·</li>
  879. <li><a href="https://github.com/wenzhixin">Github (@wenzhixin)</a></li>
  880. <li class="muted">·</li>
  881. <li><a href="https://github.com/wenzhixin/bootstrap-table/issues?state=open">Issues</a></li>
  882. <li class="muted">·</li>
  883. <li><a href="mailto:wenzhixin2010@gmail.com">Email</a></li>
  884. </ul>
  885. </div>
  886. </footer>
  887. <div class="goto-top">
  888. <i class="glyphicon glyphicon-plane"></i>
  889. </div>
  890. <script src="../src/bootstrap-table.js"></script>
  891. <script src="common.js"></script>
  892. <script src="//wenzhixin.net.cn/js/analytics.js"></script>
  893. <!-- Baidu share -->
  894. <script id="bdshare_js" data="type=slide&amp;img=6&amp;pos=right&amp;uid=6692400"></script>
  895. <script id="bdshell_js"></script>
  896. <script src="assets/highlightjs/highlight.min.js"></script>
  897. <script>hljs.initHighlightingOnLoad();</script>
  898. <!-- Go to www.addthis.com/dashboard to customize your tools -->
  899. <script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-53c78e93678a7b4d"></script>
  900. </body>
  901. </html>