我正在使用引导表.因为在同一页面上点击“添加到购物车”按钮后,我想获取所选表格行的项目ID值/值.
表码:
<table data-toggle="table" id="table-style" data-row-style="rowStyle" data-url="tables/data2.json" data-show-refresh="true" data-show-toggle="true" data-show-columns="true" data-search="true" data-select-item-name="toolbar1" data-pagination="true" data-sort-name="name" data-sort-order="desc" data-single-select="false" data-click-to-select="true" data-maintain-selected="true"> <thead> <tr> <th data-field="state" data-checkBox="true"></th> <th data-field="id" >Item ID</th> <th data-field="name" data-sortable="true">Product Name</th> <th data-field="price" data-sortable="true">Actual Price</th> <th data-field="discount_price" data-sortable="true">Discount Price</th> <th data-field="stock_avail" data-sortable="true">Stock Available</th> </tr> </thead> </table>
JQuery代码:
$(document).ready(function() { $("#add_cart").click(function() { //foreach selected row retrieve 'Item ID' values in array; //call ajax for otherpage.PHP?arr='Item ID array'; }); });
解决方法
只需使用check.bs.table和uncheck.bs.table事件来收集已检查的行.
这是一个例子.
var checkedRows = []; $('#eventsTable').on('check.bs.table',function (e,row) { checkedRows.push({id: row.id,name: row.name,forks: row.forks}); console.log(checkedRows); }); $('#eventsTable').on('uncheck.bs.table',row) { $.each(checkedRows,function(index,value) { if (value.id === row.id) { checkedRows.splice(index,1); } }); console.log(checkedRows); }); $("#add_cart").click(function() { $("#output").empty(); $.each(checkedRows,value) { $('#output').append($('<li></li>').text(value.id + " | " + value.name + " | " + value.forks)); }); });
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/> <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.8.1/bootstrap-table.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.8.1/bootstrap-table.min.js"></script> <table id="eventsTable" data-toggle="table" data-height="300" data-url="https://api.github.com/users/wenzhixin/repos?type=owner&sort=full_name&direction=asc&per_page=100&page=1" data-pagination="true" data-search="true" data-show-refresh="true" data-show-toggle="true" data-show-columns="true" data-toolbar="#toolbar"> <thead> <tr> <th data-field="state" data-checkBox="true"></th> <th data-field="name">Name</th> <th data-field="stargazers_count">Stars</th> <th data-field="forks_count">Forks</th> <th data-field="description">Description</th> </tr> </thead> </table> <button id="add_cart">Add to card</button> <ul id="output"></ul>