我所做的是创建动态HTML表格。现在我想将此表格转换为jQuery DataTables
。
有没有可能的方法呢?
在这里,我附上了动态HTML table
。
<html>
<body>
<script type="text/javascript" charset="utf-8" src="/DataTables/media/js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="/DataTables/media/js/jquery.dataTables.js"></script>
<table >
<tr>
<td>Enter Rows</td>
<td><input type="number" id="txtRows"/></td>
</tr>
<tr>
<td>Enter Columns</td>
<td><input type="number" id="txtCols"/></td>
</tr>
<tr>
<td colspan="2"><input type="button" id="btnDisplay" value="Display" onClick="ShowTable();"/></td>
</tr>
</table>
<table id="tbl_DynamicTable" border="1" style="display:none">
</table>
</body>
<script type="text/JavaScript">
function ShowTable()
{
debugger;
document.getElementById("tbl_DynamicTable").style.display = "";
createTable();
}
function createTable()
{
debugger;
var rows = document.getElementById("txtRows").value;
var cols = document.getElementById("txtCols").value;
var table = document.getElementById("tbl_DynamicTable");
var str="";
var randomColor;
for(var i=0;i<rows;i++)
{
randomColor = '#'+Math.floor(Math.random()*16777215).toString(16);
str += "<tr id=row" + i +" bgcolor="+randomColor+">";
for(var j=0;j<cols;j++)
{
if(i==0)
{
str += "<th> Header " + j + "</th>";
}
else
{
str += "<td> Row " + i + ", Cell "+ j + "</td>";
}
}
str += "</tr>";
}
table.innerHTML = str;
}
</script>
</html>
现在我该如何将此表转换为jQuery的DataTable?
答案 0 :(得分:1)
试试此示例:
在您声明otable的功能之外。
var oTable;
创建html表后的函数内部:
if(oTable.length>0)
oTable.fnDestroy();
oTable=$("tableid").dataTable({
"sDom": '<"top"i>rt<"bottom"flp><"clear">',
"sScrollY":500,
"bScrollCollapse": true,
"bPaginate": true,
"bFilter": true,
"bSort": true,
"bInfo": false,
"bSortClasses": false
});
答案 1 :(得分:0)
在添加每个动态行时将其推送到数组中,它将存储详细信息,之后您可以发送到数据库