我整个周末都很适合这个,所以我希望在这里能找到答案:
我正在使用json在服务器端调用http://datatables.net/examples/server_side/select_rows.html,但我无法从数据表中获取所选项目以将其设置为隐藏的输入(以通过槽一个Struts Action for backend process),所以数据的选择工作正常,但我在DataTable API中找不到如何获取所选行的值,如:
$("#myHiddenValues").val(datatableSelectedValues);
Run Code Online (Sandbox Code Playgroud)
var datatableSelectedValues是带有rowsId(或其他一些对象)的数组,其中包含我需要的数据,
谢谢 :)
table.rows({selected: true}).data())返回您选择访问对象的对象数组必须迭代并通过索引访问它们.例如,如果您需要show name,position并且office:
HTML代码
<table id="example" class="display DataTable" cellspacing="0" width="100%">
<thead>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Age</th>
<th>Start date</th>
<th>Salary</th>
</tr>
</thead>
<tbody>
<tr>
<td>Tiger Nixon</td>
<td>System Architect</td>
<td>Edinburgh</td>
<td>61</td>
<td>2011/04/25</td>
<td>$320,800</td>
</tr>
</tbody>
Run Code Online (Sandbox Code Playgroud)
JS代码
$(document).ready(function() {
var oTable = $('#example').DataTable();
$('#example tbody').on( 'click', 'tr', function () {
$(this).toggleClass('selected');
var pos = oTable.row(this).index();
var row = oTable.row(pos).data();
console.log(row);
} );
$('#button').click( function () {
var oData = oTable.rows('.selected').data();
for (var i=0; i < oData.length ;i++){
alert("Name: " + oData[i][0] + " Position: " + oData[i][1] + " Office: " + oData[i][2]);
}
} );
} );
Run Code Online (Sandbox Code Playgroud)
结果:https://jsfiddle.net/cmedina/7kfmyw6x/40/
| 归档时间: |
|
| 查看次数: |
14257 次 |
| 最近记录: |