我想在表<td>
中显示SQL Server数据,因此我可以在https://datatables.net/使用插件我能够将数据绑定到诸如
<asp:PlaceHolder ID = "PlaceHolder1" runat="server" />
,例如本教程:https://www.aspsnippets.com/Articles/Display-data-from-database-in-HTML-table-in-ASPNet.aspx
但是,插件需要表中的类和id,因此不起作用。我尝试插入插件需要的类和id,但是没有工作
// Table start.
html.Append("<table border = '1'>");
html.Append("<table class = "display" id = "example">");
有没有办法通过html.append
向表中插入一个类和ID?
由于
答案 0 :(得分:3)
如果您有GridView,则需要使用ClientID。将以下GridView和JavaScript放在同一个aspx页面上。
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js"></script>
<link type="text/css" rel="stylesheet" href="https://cdn.datatables.net/1.10.16/css/jquery.dataTables.min.css"/>
<asp:GridView ID="GridView1" runat="server"
OnRowDataBound="GridView1_RowDataBound">
</asp:GridView>
<script type="text/javascript">
$(document).ready(function () {
$('#<%= GridView1.ClientID %>').DataTable();
});
</script>
但是,要使GridView使用DataTables,您需要添加OnRowDataBound
事件。然后在代码后面添加以下代码。
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Header)
{
e.Row.TableSection = TableRowSection.TableHeader;
}
}
这会将<thead>
和<tbody>
标记添加到生成的html中,这是datatables.net所需要的。
答案 1 :(得分:0)
我发现这也解释了我需要<thread>
标签,这是我缺少的。