簡體   English   中英

將jQuery DataTable插件應用於通過ASP.NET動態生成的表

[英]Applying a jQuery DataTable plug-in to dynamically generated tables from ASP.NET

我的要求如下:

在我的ASPX頁面上,我使用fileUpload從電子表格中導入數據,並動態生成ASP.NET表。 表行和列的尺寸和數據由文件本身設置-這意味着在導入數據之前,我的應用程序不了解行和列。

我想做的就是將jQuery DataTables插件應用於我的動態生成的表。 當用戶單擊頁面上的導入按鈕時,將生成該表。

我的問題是格式化表格的jscript在表格可用之前運行,因此DataTable插件抱怨列。 該錯誤顯示為:

無法獲取屬性“ aoColumns”的值:對象為null或未定義

我試圖將以下代碼添加到我的Button_Click事件中,但它發生在加載表之前:

ClientScript.RegisterClientScriptBlock(Me.GetType(),“ FormatTable”,“ FormatTable();”,True)

該腳本如下:

  function FormatTable() { var oTable = $('#tblMyTable).dataTable({ "bJQueryUI": true, "sScrollY": "300px", "sScrollX": "100%", "sScrollXInner": "150%", "bScrollCollapse": true, "bPaginate": false }); new FixedColumns(oTable); }; 

我確保表格與table,thead,tr,th,tbody,tr,td的格式正確。 從后面的代碼生成表時,會將其插入服務器占位符控件中。

所以我的問題是:如何使用jQuery DataTables插件成功格式化服務器生成的表? 非常感謝您的幫助。

在這種情況下,您希望您的代碼在DOM准備好后執行。 為此,jQuery提供了ready函數。

如下所示,僅在DOM准備就緒后,才調用FormatTable

ClientScript.RegisterClientScriptBlock(Me.GetType(), "FormatTable", 
                    @"$(document).ready(function() {FormatTable();});", True);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM